Checkbox不能在VB.Net表单中工作

时间:2016-01-06 16:52:27

标签: vb.net visual-studio checkbox

我有两个checkboxes用于两个groupboxes,以便一次启用每个chboNew的可见性或不可见性,但不知何故一个工作(chboIssue)另一个(Private Sub chboIssue_CheckStateChanged(sender As Object, e As EventArgs) Handles chboIssue.CheckStateChanged If chboIssue.Checked = True Then gbIssueSearch.Visible = True gbNewSearch.Visible = False chboNew.Checked = False ElseIf chboIssue.Checked = False Then gbIssueSearch.Visible = False End If End Sub Private Sub chboNew_CheckStateChanged(sender As Object, e As EventArgs) Handles chboNew.CheckStateChanged If chboNew.Checked = True Then gbNewSearch.Visible = True gbIssueSearch.Visible = False chboIssue.Checked = False ElseIf chboIssue.Checked = False Then gbNewSearch.Visible = False End If End Sub )不是! 这是我为它编写的代码,任何帮助将不胜感激:

link_to

2 个答案:

答案 0 :(得分:3)

如果用户必须在新问题和问题搜索之间进行选择,则一次一个。 然后你应该使用单选按钮,而不是复选框。

Checkbox让我们知道用户可以同时选中这两个复选框。 在你的情况下,这不是真的。

答案 1 :(得分:1)

更改复选框的名称不会解决您的问题。我注意到,对于你的elseif子句中的chboNew.CheckStateChanged事件处理程序,你正在检查chboIssue是否被选中,而在chboIssue的其他处理程序中,你的if / else子句都会查看chboIssue。我认为这可能是你问题的一部分。此外,如果一次只应检查其中一个框,则可能需要添加逻辑以在选中一个时自动取消选中另一个框。例如,在你的chboNew处理程序中,"如果chboNew.Checked = True则chboIssue = False",以及你的chboIssue处理程序中的反转。希望这可以帮助。