<Button Name="btnFoo" Content="Foo" >
<Button.ContextMenu Placement="Bottom" PlacementTarget="btnFoo">
<MenuItem Header="Bar" />
</Button.ContextMenu>
</Button>
给我一个运行时错误“UIElement”类型没有公共(public) TypeConverter 类
我也试过
<Button Name="btnFoo" Content="Foo" >
<Button.ContextMenu Placement="Bottom" PlacementTarget="{Binding ElementName=btnFoo}">
<MenuItem Header="Bar" />
</Button.ContextMenu>
</Button>
并将 ContextMenu 放在屏幕的左上角,而不是在 Button
最佳答案
您应该在按钮上设置 ContextMenuService.Placement 附加属性,如 ContextMenu.Placement 文档中的注释所述。 .
<Button Name="btnFoo" Content="Foo" ContextMenuService.Placement="Bottom">
<Button.ContextMenu>
<ContextMenu>
<MenuItem Header="Bar" />
</ContextMenu>
</Button.ContextMenu>
</Button>
关于wpf - 在 XAML 中设置 WPF ContextMenu 的 PlacementTarget 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1272251/