我试图使用文本更改事件来操作日期选择器的值。
private void txtStay_TextChanged(object sender, EventArgs e)
{
dateTimePicker2.Text = dateTimePicker2.Value.AddDays(Convert.ToInt32(txtStay.Text)).ToString();
}但是,当我按下backspace来更改文本框中的值时,会出现问题,这会导致错误。我想要发生的是,当我按下后退空间时,它会用文本中的剩余数字改变日期的值。
发布于 2015-02-21 08:57:56
我不确定您的最终目的,但解决值错误添加以下代码的事件;
int days=0;
Int32.TryParse(txtStay.Text, out days);
dateTimePicker2.Text = dateTimePicker2.Value.AddDays(days);应该管用的。
但是,不应根据任何固定日期(而不是当前日期选择器)添加天数。
我的意思是,如果你改变文本框中的值,它会继续增加你的日子。!!
-编辑
要获得正确的日期,请使用此方法;
dateTimePicker1.Value = DateTime.Today.AddDays(days);以上以当前日期作为基准日期,但它希望您必须将dateTimepicker1(开始日期)作为基准日期。
https://stackoverflow.com/questions/28643321
复制相似问题