我在表单上有2个datetimepicker有加入和离开日期,如果我不改变这些值而不是在total_button_click上抛出异常,因为它的默认值是今天的日期,所以我想只在datetimepicker值启用total_button得到改变,我可以使用datetimepicker的任何属性为此目的,下面是total_button的代码
private void Total_button_Click(object sender, EventArgs e)
{
int remain, re, d, r;
string oday;
decimal sum = dataGridView1.Rows.OfType<DataGridViewRow>()
.Sum(row => Convert.ToDecimal(row.Cells["Money"].Value));
// total amnt drawn
textBox1.Text = sum.ToString();
d = int.Parse(textBox3.Text);
int div = d / 30;
// 1 day payment
oday = div.ToString();
textBox6.Text = (dateTimePicker2.Value - dateTimePicker1.Value).TotalDays.ToString("#");
re = int.Parse(textBox6.Text) * int.Parse(oday);
// total days paymnt
textBox7.Text = re.ToString();
r = int.Parse(textBox7.Text) - int.Parse(textBox1.Text);
// total payment -drawn i.e to b payed
textBox8.Text = r.ToString();
}
答案 0 :(得分:2)
使用DateTimePickerEvent ValueChanged http://msdn.microsoft.com/de-de/library/system.windows.forms.datetimepicker.valuechanged.aspx。如果调用该事件,您可以启用按钮。
答案 1 :(得分:0)
要使其正常工作,您需要datetimepicker的ValueChanged事件
dateTimePicker1.ValueChanged += new EventHandler(dateTimePicker1_ValueChanged);
现在即使您从显示的日历中选择当前日期,也会激活,以避免将格式设置为仅日期并避免时间组件如
dateTimePicker1.Value = DateTime.Today;
现在只有在您更改日期时才会启动,在此范围内您可以启用所需的按钮