VB.NET 创建动态文本框并有不同的功能

问题描述

所以在这里我试图创建一个动态文本框,每个文本框都有不同的功能 但遗憾的是消息框不起作用我正在学习 selft 学习这个,我很难过。谁能告诉我我做错了什么?

 Public Function AddNewTextBox() As System.Windows.Forms.TextBox
    Dim txt As New System.Windows.Forms.TextBox()
    Me.Controls.Add(txt)
    txt.Top = cLeft * 25
    txt.Left = 100
    txt.Text = "TextBox " & Me.cLeft.ToString
    txt.Name = "TextBox" & Me.cLeft.ToString
    cLeft = cLeft + 1
    Return txt
    AddHandler txt.TextChanged,AddressOf Me.text_change


    Dim txt1 As New System.Windows.Forms.TextBox()
    Me.Controls.Add(txt1)
    txt1.Top = cLeft * 15
    txt1.Left = 90
    txt1.Text = "1 " & Me.cLeft.ToString
    txt1.Name = "TextBox" & Me.cLeft.ToString
    cLeft = cLeft + 1
    Return txt
    AddHandler txt1.TextChanged,AddressOf Me.text1_change
End Function

Private Sub text_change(ByVal sender As System.Object,ByVal e As System.EventArgs)
    MessageBox.Show("The First Text has Been Change.")
End Sub

Private Sub text1_change(ByVal sender As System.Object,ByVal e As System.EventArgs)
    MessageBox.Show("The Second Text has Been Change.")
End Sub

解决方法

看你贴的第9行代码:

list

当执行到达该行时,该方法完成并且不执行后续代码行。这意味着事件处理程序没有附加到第一个 Return txt 并且第二个甚至没有被创建。

你一开始为什么要退货?您正在创建两个 TextBox,那么返回其中一个有什么意义呢?将方法设为 TextBoxes 并去掉 Sub 语句,或者在方法末尾将两个 Return 一起返回到数组等中。