以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  保持窗口中DateTimePicker(日期输入框)的原值  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=90970)

--  作者:xh2207
--  发布时间:2016/9/26 18:19:00
--  保持窗口中DateTimePicker(日期输入框)的原值

 

 

 请教:在帮助文件中窗口BeforeClose提到不允许新输入的值为空,但保留原有的值(即当修改该时间时,若有新值输入,记录新值;若输入空值时,保留原有的值时,代码如何写)

 

BeforeClose

在关闭窗口前执行。

e参数属性:

Form       表示要关闭的窗口
Cancel
     逻辑型,设为True,将禁止关闭窗口。
CloseMode
  整数型,如果是通过FormClose方法关闭窗口,则返回1,否则返回0

如果任何时候Cancel参数都返回True的话,那么窗口将永远不能关闭,直到强行中止进程,所以在代码中使用Cancel参数的时候,一定要慎重。

示例

请在窗口中加入两个DateTimePicker(日期输入框),分别命名为StartDateEndDate
然后将BeforeClose事件代码设为:

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

Else

请教保留原值的代码怎写


End
If


--  作者:有点蓝
--  发布时间:2016/9/26 20:06:00
--  
不明白你的保留原有的值是指保留什么东西的值?


--  作者:xh2207
--  发布时间:2016/9/27 9:08:00
--  
物资档案中的修改按钮
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目1_201609270904.zip


--  作者:有点蓝
--  发布时间:2016/9/27 9:27:00
--  
修改窗口BeforeClose

Dim dr As Row = Tables("商品").Current
If dr IsNot Nothing AndAlso (dr.DataRow.IsNull("品名") OrElse dr.DataRow.IsNull("型号规格")) Then
    Dim Result As DialogResult
    Result = MessageBox.Show("当前行品名和规格型号都为空,放弃修改吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        dr.Reject
    Else
        e.Cancel = True
    End If
End If
[此贴子已经被作者于2016/9/27 9:27:43编辑过]

--  作者:xh2207
--  发布时间:2016/9/27 18:05:00
--  
谢谢你!有点蓝。