2013-04-14 30 views
0

我的代碼存在一些問題... 當日期時間初始化時,我看不到消息框。 代碼有什麼問題?我根本找不到任何錯誤。 我正在使用支持DateTimePicker的WPF修改的應用程序。 它看起來像這樣:使用DateTime時無法啓動方法

private void Start_Click(object sender, RoutedEventArgs e) 
    { 
     startjob(); 
    } 
    private void startjob() 
    { 
     DateTime start = (DateTime)DateTimePicker1.Value; 
     DateTime end = (DateTime)DateTimePicker2.Value; 
     DateTime now = DateTime.Now; 
     if ((now > start) && (now < end)) 
     { 
      System.Windows.MessageBox.Show("It works"); 
     } 

XAML: 
<wpfTool:DateTimePicker x:Name="DateTimePicker1" Margin="506,189,192,1137" Width="227" TimeFormat="LongTime"> 
       </wpfTool:DateTimePicker> 
       <wpfTool:DateTimePicker x:Name="DateTimePicker2" Margin="506,238,192,1088" Width="227" Height="25"> 
        </wpfTool:DateTimePicker> 
+0

你肯定'啓動<現在

+1

沒有看到你設置DateTimePicker1和DateTimePicker2值,很難看到真正的錯誤... – NDJ

+1

旁註,爲什麼你明確地施放'DateTime'? DateTimePicker1.Value已經返回一個DateTime對象。 – keyboardP

回答

2
DateTime? start = DateTimePicker1.Value; 
DateTime? end = DateTimePicker2.Value; 
DateTime now = DateTime.Now; 

if (start == null || end == null) 
{ 
    // one of the pickers is empty 
} 
else if (now >= start.Value && now <= end.Value) 
{ 
    // you selected values in range of "now" 
} 
+0

謝謝,那很好用。當DateTimePicker1已經啓動時,如果我沒有按下開始按鈕,消息框就不會顯示出來。 很奇怪..計時器是最好的解決方案嗎? – Sneakybastardd

+0

對不起,我沒有關注你。如果你不按下按鈕,當然不會發生任何事情。您的代碼位於「開始」按鈕的Click事件中。 –

+0

@RikkiB 這是它的樣子: http://oi48.tinypic.com/2zxrsw8。jpg – Sneakybastardd