2017-04-09 75 views
0

我想直接將任何UI事件綁定到ViewModel中的命令。 有沒有辦法做到這一點UWP將Ui事件綁定到UWP中的命令

我正在使用UWP社區工具包,並希望將Hamburger-Menu-Item-Click綁定到命令。

感謝 托比亞斯

+0

是的,謝謝!那是我需要的! –

回答

2

好吧,我發現了該解決方案。 你可以在這裏找到:Behaviors in UWP (Event trigger command error

我將在這裏重複我的步驟:

1 - 安裝包

Install-Package Microsoft.Xaml.Behaviors.Uwp.Managed 

2 - 包括提及您查看

xmlns:i="using:Microsoft.Xaml.Interactivity" 
xmlns:core="using:Microsoft.Xaml.Interactions.Core" 

3-將該命令添加到您的ViewModel中

 public DelegateCommand MenuItemCommand { get; set; } 

     public void InitCommands() 
     { 
      MenuItemCommand = new DelegateCommand(MenuItemClicked);        
     } 

     private void MenuItemClicked() 
     { 
      //do something when clicked 
     } 

4 - 綁定菜單項的命令的Click-事件的看法(見我:...-標籤)

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 
    <controls:HamburgerMenu x:Name="HamburgerMenuControl" 
          PaneBackground="Black" 
          Foreground="White" 
          ItemTemplate="{StaticResource DefaultTemplate}" 
          OptionsItemTemplate="{StaticResource DefaultTemplate}" 
          ItemsSource="{Binding MenuItems}" 
          OptionsItemsSource="{Binding MenuOptionItems}" 
          > 
     <i:Interaction.Behaviors> 
      <core:EventTriggerBehavior EventName="ItemClick"> 
       <core:InvokeCommandAction Command="{Binding MenuItemCommand}"></core:InvokeCommandAction> 
      </core:EventTriggerBehavior> 
     </i:Interaction.Behaviors> 
     <Frame x:Name="ContentFrame"/> 
    </controls:HamburgerMenu> 
</Grid> 

當我知道點擊菜單項就

相關問題