回复 5楼bj_zm的帖子
你的意思是,全选Time区域的时间,然后键盘敲入一个数字,然后离开Focus?
这个时候是会自动的转换成原本正确的时间,这是C1DateTimeEditor的设计。因为它接受的是一个时间类型的,而你输入的是数字类型的。因此类型是不正确的。比如输入5,控件不能自动猜测出客户需要的是5:00:00,还是00:05:00或是00:00:05。因此强制转换是不合理的。
实际上C1DateTimePicker是由C1DatePicker和C1TimeEditor两部分组成。你可以获取到C1TimeEditor,使用它的TextValidationError事件。当数据出现异常触发此事件的时候,尝试将值转成TimeSpan的类型。
- void timeEditor_TextValidationError(object sender, TextValidationErrorEventArgs e)
- {
- timeEditor.Value = new TimeSpan(Int32.Parse(e.Text), 0, 0);
- }
复制代码 |