Automatisch INotifyPropertyChanged

Gibt es eine Möglichkeit, automatisch benachrichtigt zu werden, der änderungen der Eigenschaft in einer Klasse, ohne zu schreiben, OnPropertyChanged in jedem setter? (Ich habe Hunderte von Eigenschaften, die ich möchte wissen, ob Sie sich geändert haben).


Anton schlägt dynamische proxies. Ich habe doch tatsächlich die "Burg" - Bibliothek, für etwas ähnliches in der Vergangenheit, und während er das tut reduzieren die Menge an code, die ich hatte zu schreiben, es Hinzugefügt, um die 30 Sekunden, um mein Programm-startup-Zeit (ymmv) - weil es eine runtime-Lösung.

Ich mich Fragen, ob es einen compile-time-Lösung, vielleicht mit Hilfe von compile-time-Attribute...


Slashene und TcKs geben Anregungen und erzeugt die sich wiederholenden code - leider nicht alle meine Eigenschaften sind ein einfacher Fall von m_Value = value - viele von Ihnen haben benutzerdefinierten code in der setter, also cookie-cutter-code aus schnipseln und xml sind nicht wirklich machbar für mein Projekt.

Sie können dynamische proxies.
Ich denke, das T4 + Attribut-Methode zu implementieren INPC ist ziemlich süß.
Sieht aus wie die Antwort Nein, dann
Ich habe geholfen, um eine Klasse zum generieren einer proxy-on-the-fly Umsetzung INotifyPropertyChanged und änderungen-Erkennung: codeproject.com/KB/cs/INotifyPropertyChanged.aspx

InformationsquelleAutor Tim Gradwell | 2009-02-09

Schreibe einen Kommentar