VB.NET 创建一个动态文本框并具有不同的功能
VB.NET Create a dynamic textbox and have a different function
所以我在这里尝试创建一个动态文本框,每个文本框都有不同的功能
但遗憾的是,消息框不起作用我正在学习自我学习这个,我很难过。谁能告诉我我做错了什么?
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 行:
Return txt
当执行到该行时,方法完成并且不会执行后续代码行。这意味着事件处理程序没有附加到第一个 TextBox
并且甚至没有创建第二个。
你为什么要 return 首先是什么?您正在创建两个 TextBoxes
那么 return 其中一个有什么意义呢?使方法成为 Sub
并删除 Return
语句,否则 return 两者 TextBoxes
一起在数组或方法末尾的类似内容中。
所以我在这里尝试创建一个动态文本框,每个文本框都有不同的功能 但遗憾的是,消息框不起作用我正在学习自我学习这个,我很难过。谁能告诉我我做错了什么?
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 行:
Return txt
当执行到该行时,方法完成并且不会执行后续代码行。这意味着事件处理程序没有附加到第一个 TextBox
并且甚至没有创建第二个。
你为什么要 return 首先是什么?您正在创建两个 TextBoxes
那么 return 其中一个有什么意义呢?使方法成为 Sub
并删除 Return
语句,否则 return 两者 TextBoxes
一起在数组或方法末尾的类似内容中。