So unterdrücken Sie die Validierung, wenn nichts eingegeben wird

Ich verwende WPF-Datenbindung mit Entitäten, die implementierenIDataErrorInfo Schnittstelle. Im Allgemeinen sieht mein Code so aus:

Wirtschaftseinheit:

public class Person : IDataErrorInfo 
{
  public string Name { get; set;}

  string IDataErrorInfo.this[string columnName]
  {
    if (columnName=="Name" && string.IsNullOrEmpty(Name))
      return "Name is not entered";
    return string.Empty;
  }  
}

XAML-Datei:

<TextBox Text="{Binding Path=Name, Mode=TwoWay, ValidatesOnDataErrors=true}" />

Wenn der Benutzer auf "Neue Person erstellen" klickt, wird folgender Code ausgeführt:

DataContext = new Person();

Das Problem ist, dass der Name der gerade erstellten Person leer und WPF istsofort zeichnet roten Rahmen und zeigt Fehlermeldung. Ich möchte, dass der Fehler nur angezeigt wird, wenn der Name bereits bearbeitet wurde und der Fokus verloren geht. Kennt jemand den Weg dazu?

Antworten auf die Frage(7)

Ihre Antwort auf die Frage