首页 文章

DateTimePicker操作

提问于
浏览
0

我试图用textchange事件来操纵datetimepicker的值 .

private void txtStay_TextChanged(object sender, EventArgs e)
{
    dateTimePicker2.Text = dateTimePicker2.Value.AddDays(Convert.ToInt32(txtStay.Text)).ToString();
}

但是当我按退格键更改文本框中的值时,我遇到了麻烦,导致错误 . 我想要发生的是,当我按退格键时,它将使用文本中的剩余数字更改日期的值 .

1 回答

  • 0

    我不确定你的最终目的,但要解决值错误,请在事件中添加以下代码;

    int days=0;
            Int32.TryParse(txtStay.Text, out days);
            dateTimePicker2.Text = dateTimePicker2.Value.AddDays(days);
    

    它应该工作 .

    但是,您不应该参考任何修复日而不是当前日期选择日期添加日期 .

    我的意思是如果你改变文本框中的值,它会继续增加几天 . !!

          • -编辑 - - - - -

    要获得正确的日期,请使用此;

    dateTimePicker1.Value = DateTime.Today.AddDays(days);
    

    在它上面以当前日期为基准日期,但它喜欢你必须将你的dateTimepicker1(开始日期)作为基准日期 .

相关问题