2016-02-13 239 views
0

我想在Usercontrol加載時執行XAML命令。 原因是我想在用戶從Usercontrol A導航到Usercontrol B時更改我的應用程序的主題。我正在使用Firstfoor ModernUI。C#WPF XAML在UserControl上運行XAML命令加載

代碼中,我想執行:

Command="mui:LinkCommands.NavigateLink" 
 
     \t CommandParameter="cmd://settheme|/NLauncher;component/designs/ModernUI.BO2ii.xaml"

通常U帶一個按鈕執行代碼,但用戶瀏覽與TabControl的包含在ModernUI。

+0

如果你有,你可以調用與命令事件<我:Interaction.Triggers> <我:EventTrigger事件名稱=「裝載」> <我:InvokeCommandAction命令=」 – ganchito55

+0

如何用C#觸發此事件? – NemeZiz

回答

1

請確保您有

xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" 

在你<UserControl>標籤

然後使用這段代碼

<i:Interaction.Triggers> 
    <i:EventTrigger EventName="Loaded"> 
     <i:InvokeCommandAction Command="{Binding YourCommand}" CommandParameter = {Binding YourParameter} /> 
    </i:EventTrigger> 
</i:Interaction.Triggers> 

您將需要一個參考System.Windows.Interactivity添加到您的項目

編輯:固定事件名稱負載 - >加載

+0

如何使用C#觸發此事件? – NemeZiz

+0

這是[UserControl.Load](https://msdn.microsoft.com/en-us/library/system.windows.forms.usercontrol.load%28v=vs.110%29.aspx?f=255&MSPPError= -2147217396)事件。這是觸發第一次的用戶控件是可見的文檔 –

+0

它不是爲我工作的規定,也許我有某事在我的XAML丟失: http://pastebin.com/7GLRP7dH(我的完整XAML) – NemeZiz