vb.net - 如何通过 "String Name"获取控制属性?

标签 vb.net string object controls

我创建了按钮和文本框 编码在下一个循环中,
结果

'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/

相关文章:

vb.net - 我如何使用 Exchange 网络服务获取真实的电子邮件地址?

c# - 如何检测父进程的关闭?

.net - 强制 .NET Windows 应用程序。以英文形状显示数字

Java - 有多少字符串连接应该提示使用 StringBuilder?

java比较对象: using reflection?

c# - 如何检测 Windows 10 周年更新?

string - Lua string.find 找不到一行中的最后一个单词

java - 使用 String.format() 打印空格

javascript - 访问动态创建的对象..js

java - 我对遗传类(class)的方法有疑问