我想这样做,当用户按下OK按钮时,执行代码 这是我尝试的方式。
代码foodItemslst.Items.Add(staffForm.TheStaff.ToString)
未执行。
Private Sub AddStaffbtn_Click(sender As Object, e As EventArgs) Handles AddStaffbtn.Click
Dim staffForm As StaffForm = New StaffForm
If (staffForm.ShowDialog = System.Windows.Forms.DialogResult.OK) Then
foodItemslst.Items.Add(staffForm.TheStaff.ToString)
'the above code IS not executed.
End If
End Sub
但是这段代码有效:
Private Sub AddStaffbtn_Click(sender As Object, e As EventArgs) Handles AddStaffbtn.Click
Dim staffForm As StaffForm = New StaffForm
If (staffForm.ShowDialog = System.Windows.Forms.DialogResult.OK) Then
End If
foodItemslst.Items.Add(staffForm.TheStaff.ToString)
'The above code is executed
End Sub
代码有问题:
If (staffForm.ShowDialog = System.Windows.Forms.DialogResult.OK)
但我不知道问题是什么
“确定”按钮标记为OK
,名为OKbtn
。
有谁知道为什么DialogResult不起作用?
更新
“确定”按钮的代码
Private Sub OKbtn_Click(sender As Object, e As EventArgs) Handles OKbtn.Click
ReadValues(m_staff)
Me.Close()
End Sub
答案 0 :(得分:1)
只需设置DialogResult,您不也需要Close()
来电:
如果表单显示为对话框,请使用a设置此属性 DialogResult枚举中的值设置对话框的值 表单的框结果,隐藏模式对话框,然后返回 控制呼叫形式。
所以就这样做:
Me.DialogResult = DialogResult.Ok