BeforeClose
在关闭窗口前执行。
只有窗口类型为模式或独立窗口时,本事件才有效。
e参数属性:
Form: 表示要关闭的窗口
Cancel:逻辑型,设为True,将禁止关闭窗口,只有模式窗口才可以禁止关闭。
如果任何时候Cancel参数都返回True的话,那么窗口将永远不能关闭,直到强行中止进程,所以在代码中使用Cancel参数的时候,一定要慎重。
示例
请在窗口中加入两个DateTimePicker(日期输入框),分别命名为StartDate和EndDate。
然后将BeforeCloses事件代码设为:
Dim
sd As WinForm.DateTimePicker
Dim ed As WinForm.DateTimePicker
sd = e.Form.Controls("StartDate")
ed = e.Form.Controls("EndDate")
If sd.Value Is Nothing OrElse ed.Value Is Nothing Then
MessageBox.Show("请输入起始日期和终止日期!","提示", MessageBoxButtons.OK ,MessageBoxIcon.Information)
e.Cancel = True
End If
假定两个日期输入框分别绑定到两个全局变量:StartDate和EndDate,那么上述代码可以简化为:
If Vars("StartDate") Is Nothing OrElse Vars("EndDate") Is Nothing Then
MessageBox.Show("请输入起始日期和终止日期!","提示", MessageBoxButtons.OK ,MessageBoxIcon.Information)
e.Cancel = True
End If