一个form里有20个输入文本框,在任意一个里输入字符都要触发事件,怎么写?
控件编号为:textbox1~textbo20
是不是每个textbox都要写一段textbox_textchange的事件函数代码?
有没有比较优化和简便的写法?
谢谢!
[解决办法]
AddHandler TextBox2.TextChanged, AddressOf TextBox1_TextChanged
....
AddHandler TextBox20.TextChanged, AddressOf TextBox1_TextChanged
当以上代码执行后就动态增加了textbox2~textbo20的事件TextChanged
貌似和c#是一样的
[解决办法]
Dim ctrl As System.Windows.Forms.Control
For Each ctrl In Me.Controls
If ctrl.GetType Is GetType(System.Windows.Forms.TextBox) Then
If CType(ctrl, System.Windows.Forms.TextBox).Name.Substring(0, 7) = "textbox " Then
AddHandler CType(ctrl, TextBox).TextChanged, AddressOf TextBox_TextChanged
End If
End If
Next
TextBox_TextChanged为触发时调用得方法
移除事件时,也采用类似得方法