无法比较 2 个日期选择器



我正在尝试清理我今年早些时候所做的一些项目,我想在 2 个日期之间进行检查(两者都是使用日期选择器选择的)

我的支票很简单,提示一个消息错误,说最终日期必须大于开始日期我尝试使用选择日期更改,失去焦点,日历关闭,但没有任何成功。

我的代码是这样的

private void dtvencimento_LostFocus(object sender, RoutedEventArgs e)
{
   DateTime SelDate = dtinicio.SelectedDate.Value;
   DateTime SelDate2 = dtvencimento.SelectedDate.Value;
   //int result = DateTime.Compare(SelDate, SelDate2);
   if (SelDate > SelDate2)//if (result <= 0)
   {
      MessageBox.Show("Data do Vencimento tem de ser maior que data inicial", "Erro", MessageBoxButton.OK, MessageBoxImage.Error);
   }
   //else
   //{
   //    dtvencimento.Style = null;
   //}
}

dtvencimento 或 SelDate2 是比 dtinicio 或 Seldate 晚的日期

示例:当 dtinicio(SelDate) 为 2014 年 3 月 8 日且 dtvencimento 或 Seldate2 为 2014 年 2 月 10 日时,应发生MessageBox.Show(blablabla)

问题是事件甚至没有开始发生。

您是否尝试过像这样处理SelectedDateChanged事件?

<DatePicker SelectedDateChanged="DatePicker_SelectedDateChanged" />
...
private void DatePicker_SelectedDateChanged(object sender, SelectionChangedEventArgs e)
{
    DateTime SelDate = (DateTime)e.AddedItems[0];
    DateTime SelDate2 = dtvencimento.SelectedDate.Value;
    if (SelDate > SelDate2) // put a break point here and check value of SelDate2 
    {
        MessageBox.Show("Data do Vencimento tem de ser maior que data inicial", "Erro", MessageBoxButton.OK, MessageBoxImage.Error);
    }
}

相关内容

  • 没有找到相关文章

最新更新