如何在 WPF 中创建一组单选菜单项?
Posted
技术标签:
【中文标题】如何在 WPF 中创建一组单选菜单项?【英文标题】:How can I create a group of radio menu items in WPF? 【发布时间】:2011-09-09 08:04:07 【问题描述】:WPF 似乎缺少 RadioMenuItem
类或类似功能。在Windows.Forms
中,菜单项具有RadioChecked
属性,但WPF 菜单项只有IsChecked
。我可以将实际的RadioButton
s 放在MenuItem
中,但这感觉很奇怪,看起来很尴尬。
如何创建一组功能类似于 WPF 菜单中的单选按钮的菜单项?如需参考,请参阅 IE8 中的“缩放”菜单。
【问题讨论】:
这已经被问过很多次了,但是 SO 搜索并不是最聪明的。 Mutually exclusive checkable menu items?的可能重复 @H.B.这个问题不是重复的。它非常相似,但仍然处理IsChecked
属性(绘制复选标记)而不是 RadioChecked
-type 属性(绘制圆圈)。
这部分问题是你的问题中最少的,它实际上是一个装饰方面。
@H.B.化妆品方面对我来说很重要。
【参考方案1】:
将 MenuItem 的 Template
更改为显示 RadioButton 而不是标准显示
【讨论】:
我不想显示RadioButton
。这就是我目前的情况,但它很笨重。如果您查看我用作示例的 IE8 菜单,您会发现它不是实际的RadioButton
,而是带有圆圈作为活动项目图标的MenuItem
。
@Matthew 您仍然会更改模板以显示圆圈而不是标准显示。您不必使用实际的 RadioButton 对象。【参考方案2】:
我发现了这个,StatckOverflow 在 Google 上发布了另一篇帖子,但都没有适合我的答案。
你不想用Template你想用ItemContainerStyle。
我把答案放在另一个堆栈溢出帖子上: https://***.com/a/11497189/375727
【讨论】:
以上是关于如何在 WPF 中创建一组单选菜单项?的主要内容,如果未能解决你的问题,请参考以下文章