Apr 302011
 

Welche mächtige Höllenmaschine soll hiermit bedient werden? Ein nuklearer Taschenrechner? Ein rotes Telefon?
Ziffernblock als Fahrstuhlsteuerung

Nein, es ist nur ein Fahrstuhl mit Universal-Schnittstelle. Soll wohl den Aufwand sparen, ein spezielles, anwendungsbezogenes, angemessenes, benutzerfreundliches Bedienelement anzufertigen.
Zur Strafe muss dafür noch eine zusätzliche Anleitung daneben.
Anleitung zur Fahrstuhlsteuerung

Und der Benutzer? Hasst beides, 3 Tastendrücke für 1x in den Keller fahren und vorher noch die Anleitung lesen.

Apr 212011
 

Wie kürzlich erst gesagt gibt’s etliche Möglichkeiten, das INPC zu handhaben. Ich habe jetzt einen neuen Favoriten:
T4 Code Snippets

Vorteile: Der Code muss nicht manuell geschrieben werden, kann auch zentral refactored werden, ist aber schon zur Compilezeit vorhanden und auch sichtbar. UND: die Properties inkl. Boilerplate-Code landen in einem eigenen CodeFile und verwässern nicht den Teil, wo die komplexeren Sachen passieren.
Ach ja, und noch einer: Die Snippets liegen im Projekt, damit auch im CVS und sind immer für das ganze Team sichtbar und verfügbar, auch bei abweichender IDE-Config.

Nachteil: Evtl. minimal längere Compilezeit, spezielle Templates, z.,b. um die Zusatzfeatures des NotifyPropertyWeaver nachzubilden muss man erst noch erstellen.

Außerdem sehr schick: die verkürzte Grid!Syntax für Row-/ColumnDefinition.

Und für die T4-Snippets gibt es sicher noch weitere gute Anwendungen. Z.B. Standardvalidierung mit IDataErrorInfo, Pflichtfelder, Min/Max-Grenzen etc.

Apr 152011
 

WPF-DataBinding rocks! Schön ist auch, dass es sowohl mit den (relativ neuen) DependencyProperties als auch mit den guten alten CLR-Properties (POCOs = Plain old CLR-Objects) gut harmoniert, wenn man denn INotifyPropertyChanged aus dem ComponentModel implementiert. Das ist auch nicht schwierig, sorgt aber immer wieder für Diskussionen, wenn es darum geht, wie man am besten MagicStrings […]

n/a