#vb.net #modal-dialog
#vb.net #modal-dialog
Вопрос:
У меня есть форма, и из нее я вызываю
dialogPrintDiet.ShowDialog()
которое запускает мой диалог. Мне нужно передать строковое значение, и мне нужен самый простой способ сделать это в VB.NET .
Ответ №1:
Попробуйте свойства, например, установив некоторые текстовые поля в вашем диалоговом окне:
Property FirstName() As String
Get
Return txtFirstName.Text
End Get
Set(ByVal Value As String)
txtFirstName.Text = Value
End Set
End Property
Property LastName() As String
Get
Return txtLastName.Text
End Get
Set(ByVal Value As String)
txtLastName.Text = Value
End Set
End Property
Комментарии:
1. как мне получить доступ к FirstName в диалоговом окне. Я использую myForm.Member, и она отображается в intellesence, но ей всегда присваивается значение «ничего», даже если я устанавливаю его прямо перед вызовом диалогового окна. Извините за этот глупый вопрос, но я не привык к VB : (
Ответ №2:
Вы можете либо добавить свойство в форму, либо добавить параметр в конструктор вашей формы.
Пример первого метода будет выглядеть следующим образом (где Message — это имя свойства)
frm.Message = "Some text"
Пример второго метода будет выглядеть следующим образом
Dim frm As New SampleForm ( "Some text" )
Ваш код формы будет выглядеть примерно так
Public Class SampleForm
Private someMessage As String
Public Sub New(ByVal msg As String)
InitializeComponent()
If Not (String.IsNullOrEmpty(msg)) Then
someMessage = msg
End If
End Sub
Property Message() As String
Get
Return someMessage
End Get
Set(ByVal Value As String)
someMessage = Value
End Set
End Property
End Class