有一个Treeview控件。
<TreeView Name="ProductsHierarchy" FontFamily="Arial"
Background="White" Margin="2"
FontSize="12" SelectedItemChanged ="ProductsHierarchy_SelectedItemChanged">有没有办法为treeview的SelectedItemChanged事件绑定命令,避免事件处理程序背后的代码?
发布于 2012-12-12 19:06:25
试试MVVM Toolkit's EventToCommand。
“内置”(from Blend)方法是使用交互性。
<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 (它是波兰语的,但代码示例很容易理解)。
https://stackoverflow.com/questions/13833279
复制相似问题