2017-01-26 154 views
0

我有datetimepicker工具,用於員工出生日期條目,我想檢查用戶是否忘記輸入有效的出生日期,並在當前日期離開datetimepicker,所以他會收到一條警告消息。
我試着寫在ValueChanged事件的代碼,但它沒有工作,因爲我想...任何幫助如何比較由datetimepicker輸入日期和當前日期

if (empRegBdatePicker.Value == DateTime.Today) 
      { 
       MessageBox.Show("Please enter a valid birth date of an employee"); 
       empRegBdatePicker.Focus(); 
      } 
+0

的可能的複製[?如何在C#的DateTime比較(http://stackoverflow.com/questions/3059497/how- to-compare-datetime-in-c) –

+0

我想我們需要更多的信息。調試器是否碰到了上面的代碼? 'empRegBdatePicker.Value'的價值是什麼?它以什麼方式不起作用? – Baldrick

+0

不要將它寫入ValueChanged事件中,如果用戶忘記輸入其出生日期,則值不會更改,因此事件不會觸發。 – bolt19

回答

2

如果你想檢查只是日期,你可以試試這個:

if(empRegBdatePicker.Value.Date == DateTime.Now.Date) 
{ 
    //birthdate is today 
} 
+0

我已經在Validating事件中使用了您的條件,並且完全按照我想要的從我的問題中完成了。非常感謝:) –

0

只需簡單地寫

if(empRegBdatePicker < Today) 
{ 
    //birthdate is in past 
} 

此外,前執行此驗證任何保存操作而不是某些值更改的事件。

+0

我應該在哪裏寫這個條件? –

+0

在任何「保存」到數據庫之前,您應該檢查該數據庫,以便驗證規則。通過域更改事件,用戶可以跳過(不做任何事情),並且仍然可以設法脫身 –

相關問題