读书人

显示当前日期前一天日期后一天日期

发布时间: 2012-01-12 22:11:58 作者: rapoo

显示当前日期,前一天日期,后一天日期 后续问题
现在,在页面上,有一个TEXTBOX,和三个BUTTON
要求,点第一个BUTTON时,TEXTBOX显示系统当天日期(年月日)
点第二个BUTTON时,TEXTBOX显示前一天日期
点第三个BUTTON时,TEXTBOX显示后一天日期
TEXTBOX本身在窗体加载时,是会有一个日期放在上面的,
当我在点那三个按钮时,依次执行上面的操作,
但是前一天和后一天的按钮是针对,TEXTBOX显示的日期显示的,不是只针对今天的,
而且也希望是,点一下就前一天,和后一天的,不停点就不停前的,

这个问题之前问过大家,也有高手帮忙解决,代码如下:
private void button1_Click(object sender, EventArgs e)
{
textBox2.Text = DateTime.Now.ToShortDateString();
}

private void button2_Click(object sender, EventArgs e)
{

textBox2.Text = Convert.ToDateTime(textBox2.Text).AddDays(-

1).ToShortDateString();

}

private void button3_Click(object sender, EventArgs e)
{
textBox2.Text = Convert.ToDateTime(textBox2.Text).AddDays

(1).ToShortDateString();

}
只是现在又有新要求了,当TEXTBOX显示今天时,BUTTON3不能对其操作,BUTTON3变成不可用,只有当TEXTBOX显示的日期小于今天时,按钮三才可用,并能实现后一天操作。

高手帮忙啊,
不胜感激!



[解决办法]
private void button1_Click(object sender, EventArgs e)
{
textBox2.Text = DateTime.Now.ToShortDateString();
textBox3.Enable = false;
}

private void button2_Click(object sender, EventArgs e)
{

textBox2.Text = Convert.ToDateTime(textBox2.Text).AddDays(-

1).ToShortDateString();
textBox3.Enable = true;
}

private void button3_Click(object sender, EventArgs e)
{
textBox2.Text = Convert.ToDateTime(textBox2.Text).AddDays

(1).ToShortDateString();

}

[解决办法]
在每个函数的最后加一句:

button3.Enabled = textBox2.Text == DateTime.Now.ToShortDateString() ? false : true;

[解决办法]
在TEXTBOX的TextChanged事件里面加
button3.Enabled = textBox.Text < DateTime.Now.ToShortDateString();
[解决办法]
private void Form1_Load(object sender, System.EventArgs e)
{
textBox1.Text =DateTime.Now.ToShortDateString();
button3.Enabled=false;
}

private void button1_Click(object sender, System.EventArgs e)
{
textBox1.Text =DateTime.Now.ToShortDateString();
button3.Enabled=false;


}

private void button2_Click(object sender, System.EventArgs e)
{
textBox1.Text = Convert.ToDateTime(textBox1.Text).AddDays(1).ToShortDateString();
button3.Enabled=true;
}

private void button3_Click(object sender, System.EventArgs e)
{
textBox1.Text = Convert.ToDateTime(textBox1.Text).AddDays(1).ToShortDateString();

}
[解决办法]
在TEXTBOX的TextChanged事件里面加
DateTime dt = Convert.ToDateTime(textBox.Text);
if (dt.AddDays(1) > DateTime.Now)
{
button3.Enabled = false;
}
else
{
button3.Enabled = true;
}

读书人网 >C#

热点推荐