【问题标题】:How to make RadioButtons Mutually exclusive如何使 RadioButtons 互斥
【发布时间】:2011-02-12 21:01:21
【问题描述】:

我在一个表单上有 7 个单选按钮

其中 3 个属于一个组,其中 4 个属于另一个组

我希望 RadioButtons 在组内是互斥的。

这可以通过将它们放在两个GroupBox中来实现,

有什么方法可以在不将它们放入像 groupbox 这样的容器中的情况下实现这一点

【问题讨论】:

  • 好吧,您可以挂起事件并更改默认行为,但问题是为什么?您可以通过简单地调整边框属性使其看起来像一组

标签: c# winforms radio-button


【解决方案1】:

将它们放在Panel 上是最简单的,但如果你真的不想要容器控件,你可以使用我用过的方法。通过从RadioButton 继承创建您自己的CustomRadioButton 并添加一个Group 属性(字符串,整数,无所谓)。当CheckChanged 事件触发时,如果按钮刚刚被选中,则在父容器的Controls 集合中搜索具有相同Group 值的其他CustomRadioButton 控件并取消选中它们。我以前用过这个,效果很好。不过真的,只需使用Panel

【讨论】:

  • Hmmmm...我在放入面板时没有问题,但我可以让面板透明吗????最终用户不应该觉得单选按钮放在一个容器中,他应该觉得所有按钮(不同组)都只在表单上
  • 您可以使面板透明,或与它所在的窗体颜色相同。
【解决方案2】:

最好的方法是使用GroupBox

【讨论】:

    猜你喜欢
    • 2010-12-02
    • 1970-01-01
    • 2015-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-06
    • 1970-01-01
    相关资源
    最近更新 更多