WPF Datenbindung - Beispiel für "Custom Type Descriptor"

7

Ich sehe mehrere Leute, die sagen, dass WPF "Custom Type Descriptors" für "Change notification" verwenden kann.

Die Möglichkeiten, wie ich Benachrichtigungen ändern kann, sind:

%Vor%

Oder lassen Sie mein Objekt INotifiyPropertyChanged implementieren.

Ich sehe Kommentare, die sagen, dass Custom Type Descriptors auch funktionieren, aber niemand gibt ein gutes Beispiel dafür, wie es funktioniert. Ich frage jetzt nach diesem Beispiel (IE ein gutes Beispiel für WPF Datenbindung und Aktualisierung über benutzerdefinierte Typdeskriptoren.)

    
Vaccano 02.12.2009, 17:21
quelle

2 Antworten

20

Hier ist ein ziemlich einfaches Beispiel für Sie.

Window1.xaml :

%Vor%

Window1.xaml.cs :

%Vor%     
Kent Boogaart 02.12.2009, 21:09
quelle
6

Ich habe das ausgezeichnete und sehr klare Beispiel von Kent Boogart als Grundlage für meine benutzerdefinierten Typen verwendet. p>

Ich habe ein paar kleinere Änderungen vorgenommen, um das Verhältnis zwischen CustomTypeDescriptor und PropertyDescriptor zu verdeutlichen.

  1. Ich glaube, die Daten sollten in der Instanz des Typobjekts gespeichert werden, nicht in den Eigenschaftsdeskriptoren.
  2. Normalerweise würde ich erwarten, dass jede benutzerdefinierte Typinstanz ihre eigene Sammlung von Eigenschaftsdeskriptoren behält, anstatt dass diese statisch ist. Um dies zu verdeutlichen, habe ich einige weitere Informationen hinzugefügt (a Type ), um den Eigenschaftendeskriptor zu typisieren.

Der zweite Punkt ist wirklich ein Domain-Problem, aber ich würde erwarten, dass eine typische Verwendung Instanzeigenschaftsdaten benötigt, da man einen solchen Typ verwendet, wenn die Eigenschaften zur Kompilierzeit nicht bekannt sind.

MainWindow.xaml

%Vor%

MainWindow.xaml.cs

%Vor%

MyCustomType.cs

%Vor%

Ich hoffe, ich habe keine Heuler gemacht, da dies mein erster Beitrag ist!

    
Rob Blackbourn 03.10.2012 09:11
quelle

Tags und Links