在我的WPF TreeView中,我定义了一个HierarchicalDataTemplate
。在ItemTemplate
中,有一个按钮Command
我需要绑定到父ViewModel,这是父DataContext
的{{1}},换句话说,就是ViewModel在下面的示例中包含集合HierarchicalDataTemplate
。 SubItems
自己的ItemTemplate
- SubItem - 将用作DataContext
。
CommandParameter
如何才能在XAML中完成?
答案 0 :(得分:3)
以下绑定应该有效:
<Button Command="{Binding DataContext.Command,
RelativeSource={RelativeSource AncestorLevel=2, AncestorType=TreeViewItem}}"
CommandParameter="{Binding}" />
这将绑定到与当前TreeViewItem的父TreeViewItem相关联的DataContext的Command属性(在您的情况下是保存集合SubItems的VM)。