2008-10-08 2 views
6

Ich habe das Model-View-ViewModel-Muster betrachtet, das von mehreren Leuten da draußen vorgeschlagen wird (besonders John Gossman, sehen Sie sich post und podcast an), aber welche anderen Muster (falls vorhanden) Leute benutzt haben und mochte ... und wo fügen sie Wert hinzu?Welche Designmuster haben Sie in Ihren WPF-Bemühungen verwendet und welche mögen Sie?

ich auch über gestolpert:

Ich würde gerne eine aktive Diskussion darüber führen oben und diejenigen, die ich vielleicht noch nicht entdeckt habe.

Antwort

1

Ich habe eine Variation des Model-View-Presenter-Musters verwendet. Es hat unseren Zwecken ziemlich gut gedient, die verschiedene UIs entwickeln. Es ist nicht perfekt, aber es macht die Arbeit gut. Eines der Probleme, die ich hatte, ist, dass ich nie mit Multithread-Szenarien zufrieden bin. Wir haben kürzlich viele unserer Moderatoren zu Multi-Threading gemacht. Da diese Worker-Threads letztendlich die Benutzeroberfläche aktualisieren, mussten wir über den Dispatcher der Ansicht Aktionen an die Benutzeroberfläche senden. Der Code wurde sehr ausführlich, wenn jede View-Eigenschaft den Dispatcher überprüfte, sodass wir den Dispatcher der View aus Zeitgründen dem Moderator aussetzten. Nicht die größte Bewegung, wenn Sie mich fragen ...

Wir verwenden ein modulares UI-Framework ähnlich wie CAB und Prism, so dass viele dieser Muster auch für uns gelten.

Ich bin auch ein großer Fan von Befehlen in WPF. Ich konnte noch nicht mit Prismas DelegateCommand und CompositeCommand spielen, aber sie klingen wirklich gut.

+0

Sie können die Datamodel-View-Viewmodel-Muster über den Link oben überprüfen möchten. Mein Verständnis ist, dass Muster speziell Multi-Threaded-Szenarien berücksichtigt. In der Tat könnte man argumentieren, dass es übertrieben ist, es anders zu benutzen. – cplotts

2

Ein weiteres Muster, das wir verwendet und geliebt haben, ist das Attached Behavior-Muster ... unter Verwendung des Erweiterungsmechanismus von angehängten Eigenschaften in WPF. Es gibt auch einige Posts auf diesem nützlichen Muster.

Verwandte Themen