你可以猜到,我对.NET很陌生,只想在另一个表单上引用一个控件.
通常我会做Form.Control.Property,但这不起作用,我通过谷歌找到的每个例子都不适合我.
公共课等等似乎过于复杂.
我有包含我想要引用的控件的表单,frmGenerate有一个名为txtCustomerNo的文本框.
从这个表单到按钮的click事件,我想显示另一个表单frmCustomers,并让该表单引用txtCustomerNo中的值.
frmCustomers.ShowDialog()
它必须是简单的,我只是没有抓住.
在您要引用的控件的表单中:
原文链接:https://www.f2er.com/vb/255889.htmlPublic Property CustomerNo() As TextBox Get Return txtCustomerNo End Get Set(ByVal Value As TextBox) txtCustomerNo = Value End Set End Property
在您希望引用控件的表单中:
Dim CustomerNo as string = _sourceForm.CustomerNo.Text
这样做是一个糟糕的设计,但这是最简单的方法 – 并且应该让你顺利进行.
如果您只对文本框中输入的值感兴趣,那么以下可能更好:
Public ReadOnly Property CustomerNo() As String Get Return txtCustomerNo.Text End Get End Property
以上将要求第二个表单引用第一个表单的实际实例.将以下内容添加到第二个表单:
Private _sourceForm as frmGenerate Public Property SourceForm() As frmGenerate Get Return _sourceForm End Get Set(ByVal Value As frmGenerate) _sourceForm = Value End Set End Property
现在,您可以执行以下操作来处理第二个表单的创建和启动:
Dim customersForm as new frmCustomers customersForm.SourceForm = Me customersForm.Show()
编辑:
我在这里为你构建了一个示例项目: