2010-12-10 5 views

Antwort

1

die ItemContainerGenerator (wenn zum Beispiel in einer List-Box verwendet) ein ListBoxItem für jedes Datenelement erstellen, um die ListBox gebunden ist.

Der Standard ItemContainerGenerator in PresentationFramework hat eine private Klasse namens 'Generator'. Wenn diese Klasse durch die ItemContainerGenerator instanziiert wird es setzt den Status der ItemContainerGenerator Klasse als GeneratorStatus.GeneratingContainers, dann, wenn die ItemContainerGeneratorDispose auf der Instanz Generator aufruft, die Generator Klasse die ItemContainerGenerator Status GeneratorStatus.ContainersGenerated setzt.

GeneratorStatus.Error wird nie in der Standardimplementation verwendet, aber wenn Sie Ihre eigenen ItemsControl rollen, können Sie Ihre eigenen ItemContainerGenerator rollen und möglicherweise den Fehlerstatus in Ihrem Code verwenden.

+0

Ja, Sie haben Recht, ich habe die Frage präziser bearbeitet. Hast du auch eine Antwort? : -> – herzmeister

+0

Danke für die ausführliche Antwort. Gibt es irgendwelche Informationen darüber, wann es eine empfohlene Situation ist, 'GeneratorStatus.Error' zu setzen, wenn man seinen eigenen' ItemContainerGenerator' implementiert? – herzmeister

+0

Nun, wenn Ihr benutzerdefinierter ItemsContainerGenerator ausgeklügelte Container erstellt, die vom gebundenen Datentyp möglicherweise nicht ordnungsgemäß unterstützt werden, können Sie diesen Status auf error setzen und dann in Ihrem WPF-Code den Status der Bindungen Ihres benutzerdefinierten ItemsControls usw. überprüfen –

Verwandte Themen