Ich habe ein Objekt wie folgt aus:Wie IDataErrorInfo.Error in einem WPF-Programm verwenden?
public class Person : IDataErrorInfo
{
public string PersonName{get;set;}
public int Age{get;set;}
string IDataErrorInfo.this[string propertyName]
{
get
{
if(propertyName=="PersonName")
{
if(PersonName.Length>30 || PersonName.Length<1)
{
return "Name is required and less than 30 characters.";
}
}
return null;
}
}
string IDataErrorInfo.Error
{
get
{
if(PersonName=="Tom" && Age!=30)
{
return "Tom must be 30.";
}
return null;
}
}
}
die Personname und Alter Eigenschaften Bindung leicht:
<TextBox Text="{Binding PersonName, ValidatesOnDataErrors=True}" />
<TextBox Text="{Binding Age, ValidatesOnDataErrors=True}" />
Doch wie kann ich den Fehler Eigenschaft verwenden und entsprechend zeigen? Hier
Ich habe endlich einen Workaround gefunden und einen Post [hier] (http://www.cnblogs.com/guogangj/archive/2013/01/03/2843495.html) erstellt. – guogangj
Die Fehlereigenschaft wird in WPF nicht wirklich verwandt. Sie könnten sogar eine NotImplementedException dort hineinwerfen. IDataErrorInfo wurde von WPF verwendet, "weil es bereits dort war", aber nur für den this [] -Teil. Nicht die schönste Ecke von WPF, denke ich. – Robin
@Robin, Sie könnten eine Antwort auf diese Frage schreiben. Es war wie 3-4 Jahre und es gibt keine akzeptierte Antwort;) –