ich implementiert habe in einem Ausstecher Art und Weise das folgende Stück Code unter Verwendung von, in Dutzenden von Klassenvon einer Basisklasse erben, die INotifyPropertyChanged
public event PropertyChangedEventHandler PropertyChanged;
protected void NotifyPropertyChanged(string propertyName)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
dieser Klassen Alle implementieren INotifyPropertyChanged
. Um meine DRY-Alarme zum Schweigen zu bringen, habe ich diese Klassen neu defactoriert, um meine Basisklasse PropertyNotifier
zu erben, deren einziger Zweck darin besteht, NotifyPropertyChanged
für Klassen bereitzustellen, die davon erben - das sind die Dutzende von ViewModel
Klassen in meinem riesigen Projekt.
Es fühlt sich faul und ein bisschen schmutzig. Verletze ich Leistung oder breche gute Designpraktiken? Ich denke, wenn die Änderungsbenachrichtigung so einfach sein sollte, würde es bereits eine Basisklasse im WPF-Framework geben, die das tut, was meine PropertyNotifier
-Klasse tut.
Beachten Sie, dass ich aus vielen Gründen Leistungsprobleme mit der Reaktionsfähigkeit meiner Benutzeroberfläche hatte - hauptsächlich aufgrund einer großen Anzahl von Steuerelementen. Also versuche ich, das Fett zu schneiden, wo immer ich kann. Irgendwelche Ideen?
Vielen Dank für die Beruhigung: D – bufferz