从日期到日期使用c#Datetimepicker验证进行验证 [英] from date and to date validate using c# of Datetimepicker validation

查看:77
本文介绍了从日期到日期使用c#Datetimepicker验证进行验证的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

private void dateTimePickerHolidayToDate_ValueChanged(object sender, EventArgs e)
        {
DateTime fromdate = Convert.ToDateTime(dateTimePickerFromDate.Text);
DateTime todate1 = Convert.ToDateTime(dateTimePickerToDate.Text);               
                if (fromdate1 <= todate1)
                {
                    TimeSpan daycount = todate1.Subtract(fromdate1);
                    int dacount1 = Convert.ToInt32(daycount.Days) + 1;
                    txtDay.Text = Convert.ToString(dacount1);                    
                }
                else
                {                    
                   MessageBox.Show("From Date Must be Less Than To Date");
                }
        }







HI祝每个人下午好,在Windows应用程序我使用两个datetimepicker从日期和到日期...选择到日期后,我需要计算从日期和到日期天数之间的天数,为此我使用上面的代码...但是当我将to datetimepicker移动到小于from datetimepicker时,它执行无限次显示消息框。如何只显示一次该消息框...




HI frnds Good Afternoon to every one,In windows application i am using two datetimepicker for "from date" and "to date" ...After choosing "to date" i need to count number of days in between "from date" and "to date" days count ,for that i used above code...but when move my "to datetimepicker" less than "from datetimepicker" it executing infinite times of showing message box.How to show only one time that message box...

推荐答案

而不是 dateTimePicker2_ValueChanged

使用 dateTimePicker2_CloseUp 事件,所以你的最终代码将是



Instead of dateTimePicker2_ValueChanged
Use dateTimePicker2_CloseUpevent , so your final code will be

private void dateTimePicker2_CloseUp(object sender, EventArgs e)
{
    DateTime fromdate = Convert.ToDateTime(dateTimePicker1.Text);
    DateTime todate1 = Convert.ToDateTime(dateTimePicker2.Text);
    if (fromdate <= todate1)
    {
        TimeSpan daycount = todate1.Subtract(fromdate);
        int dacount1 = Convert.ToInt32(daycount.Days) + 1;
        MessageBox.Show(Convert.ToString(dacount1));
    }
    else
    {
        MessageBox.Show("From Date Must be Less Than To Date");
    }
}





CloseUp 仅当用户最终选择值时才触发事件。 ValueChanged 当您更改月份时也会触发事件。



我已更正您的变量名称在代码:)运行在我的本地方框



标记为解决方案如果这解决了你的问题



谢谢......



CloseUp event is triggered only when the user finally selects a value. ValueChanged event will fire when you change the month also that was your issue.

I have corrected your variable names in code :) to run in my local box

mark it as solution if this resolved your issue

Thanks...


DateTime selectedDate = Convert.ToDateTime(dtpExpireDate.Value);
DateTime todayDate = Convert.ToDateTime(DateTime.Now);
if (selectedDate < todayDate)
{
    MessageBox.Show("Selected date Must be greater then Today's date");
}


我认为在来自fromDate的ClosUp事件中你可以配置类似的东西:



I think that in ClosUp event from "fromDate" you could configure something like:

dateTimePicker2.MinDate = dateTimePicker1.Value





这样,用户只能选择数据等于或在第一个日期之后。



This way, user can only choose a data equal or after the first date.


这篇关于从日期到日期使用c#Datetimepicker验证进行验证的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆