0
有沒有一種方法可以將datepicker值設置爲Empty/Null/blank(通常默認爲mindate,即01/01/0001)Silverlight 5 DatePicker(或任何其他日期控制)允許空白/空/空值
感謝您對此的幫助!
有沒有一種方法可以將datepicker值設置爲Empty/Null/blank(通常默認爲mindate,即01/01/0001)Silverlight 5 DatePicker(或任何其他日期控制)允許空白/空/空值
感謝您對此的幫助!
XAML:
轉換器:日期時間爲空轉換
public class DateTimeToNullConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if(System.Convert.ToDateTime(value).ToLongTimeString() != "12:00:00 AM")
{
return null;
}
return value;
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value == null || value.ToString() == "")
{
return DateTime.Now;
}
return value;
}
}
}
使用該轉換器的文本,一個日期選擇器的SelectedDate和顯示日期財產 再處理視圖模型中的lostfocus中繼命令用於更多va lidation
private void FromDateLostFocusCommandExecuted(EventArgs args)
{
//ClearValidationErrors();
string inputDate =
((System.Windows.Controls.Primitives.DatePickerTextBox)
(((System.Windows.RoutedEventArgs)(args)).OriginalSource)).Text;
if (inputDate != "")
{
if (!IsValidDate(inputDate))
{
ObservableCollection<string> errors = GetErrorsCollection("FromDate");
errors.Add("Please enter a valid From Date (M/d/yyyy)");
RaiseErrorsChanged("FromDate");
if (!validationErrors.Contains("FromDate"))
{
validationErrors.Add("FromDate");
}
}
else
{
ClearValidationErrors("FromDate");
if (validationErrors.Contains("FromDate"))
{
validationErrors.Remove("FromDate");
}
}
}
else
{
ClearValidationErrors("FromDate");
if (validationErrors.Contains("FromDate"))
{
validationErrors.Remove("FromDate");
}
}
}