一个比较郁闷的问题:我用datetimepicker控件,只显示时间,format设为time,显示是没有问题的,如12:10:10;
问题是我用键盘输入去改变它的值,如输入:12:10:1,如果焦点没有离开datetimepicker控件,我就去点一个按钮,
想让我输入的值显示出来,可是显示的值还是:12:10:10;就是得不到我输入的值:12:10:1; 好像datetimepicker控件
不能结束编辑状态,必须去点别的地方,再去点按钮才可以得到我输入的值?是什么原因?请大家分析一下,谢谢
问题是我用键盘输入去改变它的值,如输入:12:10:1,如果焦点没有离开datetimepicker控件,我就去点一个按钮,
想让我输入的值显示出来,可是显示的值还是:12:10:10;就是得不到我输入的值:12:10:1; 好像datetimepicker控件
不能结束编辑状态,必须去点别的地方,再去点按钮才可以得到我输入的值?是什么原因?请大家分析一下,谢谢
我设想是这样的
(1)你修改了dateTimePicker1的值,此时dateTimePicker1还有焦点
(2)你点击了别的控件,此时dateTimePicker1应该失去焦点。
(3)dateTimePicker1在Leave()事件中会更新dateTimePicker1.Text如果楼主出现这种情况,不如直接在dateTimePicker的Leave事件中强制赋值看看
{
this.textBox1.Text = this.dateTimePicker1.Value.ToString("HH:mm:ss");
}没有问题啊,ToString()方法中的格式可以自行设置!
{
this.textBox1.Text = this.dateTimePicker1.Value.ToString("HH:mm:ss");
MessageBox.show(this.textBox1.Text.tostring());
}
这样子行吗?不可能吧,我这里始终得不到输入的值啊。
三楼,
(2)你点击了别的控件,此时dateTimePicker1应该失去焦点。
这应该是对的,但是如果你输入:1:1:1,直接点按钮,这时候dateTimePicker1还没有失去焦点,
得不到输入的值。请大家试试,谢谢