Когда я сначала показываю свой экран пользователю, я бы предпочел, чтобы все сообщения проверки не отображались для обязательных полей и, прежде чем пользователь имел возможность заполнить любое из полей формы. Я установил UpdateSourceTrigger
в моих привязках к LostFocus
, но ошибки все еще отображаются при первом отображении элемента управления. Есть ли способ обойти это?
XAML:
<TextBox Text="{Binding Path=OpeningOdometer, ValidatesOnDataErrors=True, UpdateSourceTrigger=LostFocus}" />
ViewModel:
[Required(ErrorMessage = "Please enter the opening odometer.")]
[Range(0, Double.MaxValue, ErrorMessage = "Opening Odometer must be a positive number")]
public string OpeningOdometer
{
get { return _openingOdometer; }
set
{
_openingOdometer = value;
NotifyOfPropertyChange(() => OpeningOdometer);
}
}
// Implementation of IDataErrorInfo
public string this[string columnName]
{
get
{
// This uses the System.ComponentModel.DataAnnotations placed on
// the OpeningOdometer property to produce an error string
// if the value of the property is in violation of any of the
// annotated rules.
return _valHelper.GetErrorsForProperty(columnName, this);
}
}