2016-03-11 3 views
0

Мои DatePickerTextBox является переплетены к свойству типа DateTime? (что позволяет нуль)Как установить свойство связывания обнулить, если DatePickerTextBox остается пустым

Я хотел бы установить это свойство в нуль, если DatePickerTextBox остается пустым.

Мой текущий подход:

private void TextChanged_Handler(object sender, TextChangedEventArgs e) 
    { 
     var dateTimePickerTextBox = (DatePickerTextBox)sender; 
     if (dateTimePickerTextBox.Text == string.Empty) 
      this.MyBindingObj.MyDate = null; 
    } 

Это работает, но имеет тот недостаток, что DatePickerTextBox UI помечен как красный (ошибка), так как связывание между текстом и DateTime не был успешным. Хотя за кулисами все работает нормально.

Интересно, есть ли более чистый способ сделать это.

ответ

0

Я нашел обходной путь, просто добавляя dateTimePickerTextBox.Text = null; к предыдущему коду:

private void TextChanged_Handler(object sender, TextChangedEventArgs e) 
    { 
     var dateTimePickerTextBox = (DatePickerTextBox)sender; 
     if (dateTimePickerTextBox.Text == string.Empty) 
     { 
      this.MyBindingObj.MyDate = null; 
      // Added this to avoid validation error: 
      dateTimePickerTextBox.Text = null; 
     } 
    } 
Смежные вопросы