在VB.NET窗体之间传递数据
我有一个表单,它有一个按钮,点击它会弹出一个对话框表单。在此对话框表单中,用户需要选择一些数据,当用户完成后,他们单击“确定”按钮。单击OK按钮后,需要将整数返回到上一个表单 我创建了一个对话框表单,并尝试通过以下代码调用它:在VB.NET窗体之间传递数据,vb.net,variables,dialog,Vb.net,Variables,Dialog,我有一个表单,它有一个按钮,点击它会弹出一个对话框表单。在此对话框表单中,用户需要选择一些数据,当用户完成后,他们单击“确定”按钮。单击OK按钮后,需要将整数返回到上一个表单 我创建了一个对话框表单,并尝试通过以下代码调用它: Dim intResult as Integer = frmData.ShowDialog() Debug.Writeline(intResult) 但是,似乎我只能返回DialogResults(中止、取消、忽略…) 我想知道如何在不必创建公共变量并将结果存储在其中
Dim intResult as Integer = frmData.ShowDialog()
Debug.Writeline(intResult)
但是,似乎我只能返回DialogResults(中止、取消、忽略…)
我想知道如何在不必创建公共变量并将结果存储在其中的情况下尝试此操作。在对话框窗体上创建事件,在主窗体上订阅事件,并在对话框中使用事件参数中包含的适当数据将其提升。在对话框中创建一个将返回该值的属性
If frmData.ShowDialog() Is Not DialogResult.Cancel
Dim value as integer = frmData.MyProperty
...
Endif
在项目中创建cutom对话框(添加/新元素/Windows窗体/对话框)。 然后从中创建一个实例,调用showDialog并检查其DialogResult是否为Windows.Forms.DialogResult.Ok。您可以访问其所有控件,例如:
Dim d As New Dialog1
Dim result As DialogResult = d.ShowDialog(Me)
If result = Windows.Forms.DialogResult.OK Then
Dim selectedText As String = d.ComboBox1.SelectedText
End If