Rss & SiteMap
Foxtable(狐表) http://www.foxtable.com
日期输入框是可以清空的,日前变量不能为空而已.
你可以测试在按钮中测试:
messagebox.Show(e.Form.Controls("DateTimePicker1").Value Is Nothing)
判断是否输入了日期,应该通过日期输入框的Value属性,而不是变量
按楼上的方法,我反复测试,怎么还是不行呢?
请老六帮忙看看以下代码有什么问题没有。这是在DateTimePicker1控件的内容改变中设置的,如果日期为空的话,TextBox1的值就应该为空,否则就显示该日期对应的星期。现在即使将日期清空了,但TextBox1还是显示上一个日期所对应的星期数。
If e.Form.Controls("DateTimePicker1").Value Is Nothing
e.Form.Controls("TextBox1").Value=""
else
e.Form.Controls("TextBox1").Value=Format(e.Form.Controls("DateTimePicker1").Value,"dddd")
end if
那现在问题来了:同样的代码在单击事件中有效,为什么在TextChanged就无效呢?我希望的是,只要日期改变,就可马上看到星期的改变。
清空日期以后,Text当然也就改变了,为什么它就不执行呢?
TextChanged
控件的Text属性发生变化后执行。
在控件中每输入或删除一个字符,都会触发TextChanged事件。
e参数属性:
Sender:返回触发事件的控件
Form: 返回控件所在的窗口
示例
假定某个文本框绑定到一个字段,我们在该文本框输入内容的时候,并不会即刻刷新字段的内容,直到你输入结束并离开该文本框,字段的内容才会刷新。
如果你希望在文本框中进行的任何编辑,均能即时显示在字段中,可以将其TextChanged事件代码设为:
e.Sender.WriteValue()
哦,终于明白了。日期输入框比文本框、组合框等少一个Text属性,我把事件直接复制过来修改一下用的。
汗。。。