2012-12-12 46 views
1

有一個Treeview控件。如何將命令綁定到TreeView的SelectedItemChanged事件

<TreeView Name="ProductsHierarchy" FontFamily="Arial" 
          Background="White" Margin="2" 
          FontSize="12" SelectedItemChanged ="ProductsHierarchy_SelectedItemChanged"> 

是否有綁定的樹狀的SelectedItemChanged事件的命令的方式,避免了事件處理程序後面的代碼?

+0

也許這可能有所幫助:http://stackoverflow.com/questions/1048517/wpf-calling-commands-via-events –

回答

3

嘗試MVVM Toolkit's EventToCommand

「內置」(從混合)的方法是使用交互

<TreeView Name="ProductsHierarchy" FontFamily="Arial" 
          Background="White" Margin="2" 
          FontSize="12" SelectedItemChanged ="ProductsHierarchy_SelectedItemChanged"> 
    <i:Interaction.Triggers> 
     <i:EventTrigger EventName="SelectedItemChanged"> 
      <i:InvokeCommandAction Command="{Binding SelectedItemChangedCommand}" CommandParameter="argument"/> 
     </i:EventTrigger> 
    </i:Interaction.Triggers> 
</TreeView> 

必須包括命名空間:

xmlns:i="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity" 

這裏的缺點是,你必須EventArgs進不去。這裏是solution(這是波蘭語,但代碼示例幾乎不言自明)。

相關問題