如何在文本框中获取日期差异
本文关键字:获取 取日期 文本 | 更新日期: 2023-09-27 18:33:14
我有两个文本框:文本框1和文本框2都有日期。
我想在第三个文本框中获取日期差异,即 TextBox3。
我的代码是:
protected void TextBox1_TextChanged(object sender, EventArgs e)
{
TextBox3.Text = ((Convert.ToInt32(TextBox1.Text) - Convert.ToInt32(TextBox2.Text)).ToString());
}
protected void TextBox2_TextChanged(object sender, EventArgs e)
{
TextBox3.Text = ((Convert.ToInt32(TextBox1.Text) - Convert.ToInt32(TextBox2.Text)).ToString());
}
将两个输入值都转换为 DateTime
,如
DateTime dt1 = DateTime.Parse(TextBox1.Text);
DateTime dt2 = DateTime.Parse(TextBox2.Text);
然后,将两者减去得到一个TimeSpan
对象:
TimeSpan ts = dt1 - dt2;
然后,可以使用 ts
的属性来设置第三个文本框的值:
TextBox3.Text = ts.TotalDays.ToString();
我假设在这里将有效日期输入到两个文本框中,否则您将在上面的第一行中出现异常。您也可以查看 DateTime
类提供的ParseExact
或TryParse/TryParseExact
方法。
DateTime d1 = TextBox1.Text!=string.Empty?Convert.ToDateTime(TextBox1.Text): DateTime.MinValue;
DateTime d2 = TextBox2.Text!=string.Empty?Convert.ToDateTime(TextBox2.Text):DateTime.MinValue;
TimeSpan tspan= d2-d1;
TextBox3.Text = tspan.TotalDays.ToString();
像这样尝试
DateTime d1 = Convert.ToDateTime(TextBox1.Text);
DateTime d2 = Convert.ToDateTime(TextBox2.Text);
TimeSpan span = d2-d1;
TextBox3.Text = span.TotalDays.ToString();