.net 如何绑定WPF上下文菜单项资源?
我试图通过以下方式绑定Button的上下文菜单:.net 如何绑定WPF上下文菜单项资源?,.net,wpf,xaml,data-binding,itemssource,.net,Wpf,Xaml,Data Binding,Itemssource,我试图通过以下方式绑定Button的上下文菜单: <Button.ContextMenu> <ContextMenu ItemsSource="{Binding RelativeSource={RelativeSource AncestorType=UserControl}, Path=Values}"/> </Button.ContextMenu> (UserControl具有Values属性) 为什么这样不行? 但是,当我将此绑定放入其他控件
<Button.ContextMenu>
<ContextMenu ItemsSource="{Binding RelativeSource={RelativeSource AncestorType=UserControl}, Path=Values}"/>
</Button.ContextMenu>
(UserControl具有Values属性)
为什么这样不行?
但是,当我将此绑定放入其他控件(如
)时,它工作正常
另一个问题,如何调试WPF中的绑定问题?它不起作用,因为ContextMenu不是可视或逻辑树的一部分,因此它不会以与其他控件相同的方式继承
DataContext
。它不是你控制的孩子
您可以使用ContextMenu的PlacementTarget
属性来获取ContextMenu附加到的父元素,然后从那里开始