【发布时间】:2010-10-05 00:12:06
【问题描述】:
我有一个 WPF TreeView 控件,它的项目有一个HierarchicalDataTemplate。现在在HierarchicalDataTemplate 中,我有一个Label,Label 有一个ContextMenu,其中有一个Delete 的菜单项。删除菜单项绑定到名为DeleteCommand 的命令,该命令是已设置为HierarchicalDataTemplate 的DataType 的类的一部分。
现在,我想在 ContextMenu 的 Delete menuitem 的 DeleteCommand 的 CommandParameters 中传递 TreeView 控件,以便在删除当前选定的项目时处理 TreeViewItems 的选择。
但是,如果我将CommandParameters 绑定为{Binding ElementName=TreeViewName} 或其他任何内容,除非绑定的元素是DataContext 中的属性,否则它始终为空。
任何人都可以帮助我解决问题,因为我认为,我已经尝试了所有可能的东西,例如 RelativeSource 和 AncestorType 等,但它始终为空。对我来说,这看起来像是框架中的限制或错误。
【问题讨论】: