1

在我在 VB.NET 中处理的一个简单程序中,我动态地创建了几个 ComboBoxes 和 TextBoxes。

例如,像:

    Dim i As Integer
    For i = 0 To 11
        Dim NewTxt As New TextBox()
        Me.Controls.Add(NewTxt)
        NewTxt.Name = "txtNoteInput" & i
    Next

我想限制用户在这些文本框中输入某些键盘字符。过去,我已经为使用“... Handles ExampleTextBox.KeyPress”(类似于此处描述的内容:http: //msdn.microsoft.com/en-us/library/ms171538.aspx)视觉创建的单个文本框完成了此操作。

我正在寻找有关如何执行此操作的帮助:(1)用于动态创建的文本框,以及(2)一个(或几个)适用于许多文本框的代码块。

4

1 回答 1

1

以此为参考,大致如下

Dim i As Integer
For i = 0 To 11
    Dim NewTxt As New TextBox()
    Me.Controls.Add(NewTxt)
    NewTxt.Name = "txtNoteInput" & i
    ' Add this line below:
    AddHandler NewTxt.TextChanged, AddressOf Text_Changed
Next

和:

Private Sub Text_Changed(ByVal eventSender As System.Object, _
                         ByVal eventArgs As System.EventArgs)
    Dim txt As String = eventSender.Text
    ' Do your regular filtering here as you would normally
End Sub
于 2012-11-29T05:59:07.257 回答