我创建了按钮和文本框 编码在下一个循环中,
结果
'T(x).Name = "text_1"
'T(x).Name = "text_2"
'T(x).Name = "text_3"
'....
'B(x).Name = "button_1"
'B(x).Name = "button_2"
'B(x).Name = "button_3"
'...
我想在单击按钮时获取文本框属性,
单击时我可以获得按钮属性,例如
button_1.Name.ToString
但我无法获得 text_1,2,3 .... 属性。我通过拆分函数 button_1.Name.ToString 做了一些技巧并得到最后一个数字
并将其添加到文本框名称中,如
"text_" & button_1.Name.ToString
但我无法将此字符串转换为对象。更新
这是我用来在循环中加载控件的代码:
C_A_TEXT(x) = New TextBox()
C_A_TEXT(x).Dock = System.Windows.Forms.DockStyle.Fill
C_A_TEXT(x).Location = New System.Drawing.Point(270, 5)
C_A_TEXT(x).Margin = New System.Windows.Forms.Padding(0)
C_A_TEXT(x).Size = New System.Drawing.Size(70, 27)
C_A_TEXT(x).TabIndex = 5
C_A_TEXT(x).Name = "NEW_RECHARGE_COUNT_TEXT_" & x
更新 2
这里还有一些代码:
AddHandler C_A_BUTTONS(x).Click, AddressOf C_A_BUTTON
Private Sub C_A_BUTTON(ByVal sender As System.Object, ByVal e As System.EventArgs)
Dim thisButton As Button = sender Dim A = CType(Me.Controls("NEW_RECHARGE_COUNT_TEXT_1"), TextBox)
MsgBox(A.Text.ToString) 'Error!
End Sub
最佳答案
您可以通过 Form.Controls
按名称访问控件。属性,例如:
Dim text1 As TextBox = CType(Me.Controls("text_1"), TextBox)
关于vb.net - 如何通过 "String Name"获取控制属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15076975/