繁体   English   中英

在组框中选择的 VB.NET 默认单选按钮

[英]VB.NET default radio button selected inside a group box

我有一个 WinForms 应用程序(VS 2008,.NET 3.5),它有一个带有两个不同组框的表单,每个组框内部是不同的单选按钮组。 当我运行应用程序时,第一个组框会自动选择第一个单选按钮,而第二个组框默认没有选择单选按钮。

我查看了单选按钮和组框的所有属性,但无法弄清楚两者之间的区别。 我希望第一次打开表单时,两个组框都取消选择所有单选按钮。

此外,我查看了表单的 Designer.vb 文件,也找不到任何异常之处。

将所有按钮的 AutoCheck 属性设置为 False。 您现在必须为他们编写一个 Click 处理程序来设置他们的 Checked 属性。 处理其中两个的示例处理程序:

  Private Sub RadioButton_Click(ByVal sender As Object, ByVal e As EventArgs) _
      Handles RadioButton1.Click, RadioButton2.Click
    Dim button As RadioButton = DirectCast(sender, RadioButton)
    RadioButton1.Checked = button is RadioButton1
    RadioButton2.Checked = button Is RadioButton2
  End Sub

我也遇到过这个问题我只是在 Form_Shown 事件中手动将所有 RadioButton 对象设置为 .Checked = False 。 请注意,它必须Form_Load 事件之后,否则它将不起作用,并且 RadioButton 将设置为默认值。

为什么? 我不知道。 也许是 VB.NET 中的一个错误。

如果您的最低标签索引是单选按钮,并且您将 AutoCheck 设置为 True,那么当表单加载并将活动元素设置为最低标签索引时,它的行为就像您单击了单选按钮,触发了 AutoCheck 并因此检查单选按钮。 只需在表单上提供另一个控件 Tab Index 为 0。

您需要为两个无线电组指定不同的组名。 这可能不是您的问题,但这是一个可能的原因。

我很好奇你为什么希望收音机默认没有任何价值。 Radios 代表布尔值 - True 或 False - 没有其他有效状态。

RadioButton1.checked = False 在 Form_Activated 下有效。

我遇到了这个问题,并且使 Autocheck=false 成功了。 是的 RadioButton1 是 TAB=0

谢谢你

在所有单选按钮上将自动检查设置为“假”,这两个组。 将它们全部设置回“True”。 这对我有用。 我还必须对框进行分组,其中一个很好,第二个框选中(选中)第一个按钮。

只需将 groupbox 可访问角色属性从默认更改为无即可 ☺️

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM