VB.Net используя свойства формы или управляющие значения - PullRequest
0 голосов
/ 26 июня 2018

Я пишу программу на VB.Net, которая использует форму для передачи информации другим классам, и у меня есть вопрос относительно моей текущей структуры кода. Лично мне не нравится, чтобы различные элементы управления в форме отображались для других классов по желанию, поэтому я предпочитаю использовать свойства этих элементов управления только для чтения, чтобы классы могли получать их информацию. Проблема в том, что свойства заняли много места в классе формы и, я чувствую, делают его громоздким и трудным для чтения. Существуют ли какие-либо стандарты / есть ли какие-либо советы по этому поводу, которым я мог бы следовать?

Чтобы уточнить, я бы предпочел использовать, например,

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

вместо

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

Поскольку первые свойства выглядят лучше (IMO), а вторые могут рисковать такими вещами, как

MyForm.PartNumberTextBox.Value = "Something else"

Любые предложения / ответы будут оценены.

1 Ответ

0 голосов
/ 28 июня 2018

В форме можно создавать свойства только для чтения, которые являются обертками для значений в элементах управления:

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

Таким образом, вы можете получить доступ к значениям, внешним по отношению к форме, без риска их изменения:

MsgBox(MyForm.PartNumber)
...