2012-07-09 73 views
2

我想将TreeView上的命令的CommandParameter绑定到TreeView本身的选定项目,而无需命名TreeView。将自我传递给CommandParameter?

代码:

<TreeView> 
    <ACB:CommandBehaviourCollection.Behaviours> 
     <ACB:BehaviourBinding Event="SelectedItemChanged" Command="{Binding CmdSelectedItemChanged}" CommandParameter="{Binding SelectedItem, Source={RelativeSource Mode=Self}}"></ACB:BehaviourBinding> 
    </ACB:CommandBehaviourCollection.Behaviours> 
</TreeView> 

我使用AttachedCommandBehaviour在上面的例子。

有人可以解释我怎么能做到这一点?

谢谢, Alex。

回答

3

试试以下:

<ACB:BehaviourBinding 
    Event="SelectedItemChanged" 
    Command="{Binding CmdSelectedItemChanged}" 
    CommandParameter="{Binding 
     Path = PlacementTarget 
     RelativeSource={RelativeSource FindAncestor, 
     AncestorType={x:Type TreeView}}}" /> 
+0

@Alex希望奥康纳:是它帮助? – sll 2012-07-11 08:48:42

相关问题