如何仅选中在文本框中输入的复选框?
如果我有4个复选框,则带有文本checkbox1,checkbox2,checkbox3和checkbox4以及1个文本框
如果我输入文本框1,2那么只有checkbox1和checkbox2会在我在文本框中输入3,4之后再次直接检查,然后只会检查3,4并且1,2将被取消选中..
记住我想做这个编码无限的没有。复选框..所以dnt只提供4个复选框的编码.....为我提供无限复选框的编码......
答案 0 :(得分:1)
只需循环浏览所有复选框,然后在检查新复选框之前取消选中它们。
答案 1 :(得分:0)
尝试使用TextBoxes和CheckBoxes的命名约定。因此,如果对所有这些事件使用一个TextChanged事件处理程序,则可以使用Sender
参数来标识正在更改的文本框。然后取消选中上一个复选框并选中新复选框:
Public Class Form1
Public oldCheckBox As CheckBox
Private Sub TextBox4_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox4.TextChanged, TextBox3.TextChanged, TextBox2.TextChanged, TextBox1.TextChanged
Dim x As TextBox = sender
Dim i As Integer = x.Text.Substring(7) // 7 = length of "TextBox"
Dim relatedCheckBox As CheckBox = Me.Controls("CheckBox" + i.ToString())
relatedCheckBox.Checked = True
If (oldCheckBox IsNot Nothing) And (oldCheckBox IsNot relatedCheckBox) Then
oldCheckBox.Checked = False
End If
oldCheckBox = relatedCheckBox
End Sub
End Class