VB.Net 使用表单属性或控件值

VB.Net using form properties or control values

我一直在 VB.Net 中编写程序,该程序使用表单将信息传递给其他 classes,我对我当前的代码结构有疑问。我个人不喜欢将表单中的各种控件公开给其他 classes 随意更改,因此我更愿意为 classes 使用这些控件的只读属性获取他们的信息。问题是,这些属性最终占用了表单 class 中的大量 space,而且我觉得这使它变得笨拙且难以阅读。是否有任何 standards/is 对此我可以遵循的建议?

为了帮助澄清,我宁愿使用,例如,

MsgBox(MyForm.PartNumber)
'Or
MsgBox(MyForm.PartType)

而不是

MsgBox(MyForm.PartNumberTextBox.Text)
'Or
MsgBox(MyForm.PartTypeComboBox.SelectedItem.ToString())

因为前者的属性看起来更好(IMO)而后者可能会遇到类似的风险

MyForm.PartNumberTextBox.Value = "Something else"

任何 suggestions/responses 将不胜感激。

您可以在表单上创建只读属性,这些属性是控件中值的包装器:

Public ReadOnly Property PartNumber As String
   Get
      Return PartNumberTextBox.Text
   End Get
End Property

这样您就可以访问表单外部的值,而不会有被修改的风险:

MsgBox(MyForm.PartNumber)