2009-03-01 5 views
0

J'ai un objet métier qui implémente une collection de PropertyObjects.WPF - Comment implémenter INotifyPropertyChanged lorsque les propriétés sont dynamiques

BusinessObject SomeCollection Property1Object (Name = Hauteur) Property2Object (Nom = largeur)

Actuellement, je suis en train DataContext de UserControl être le BusinessObject. J'ai trouvé que je peux faire référence dans la collection dans la liaison avec quelque chose comme cela, dit dans une zone de texte ..

UserControl.DataContext = BusinessObject UserControl.TextBlock Text = "{Binding Collection [Hauteur]. Valeur} "

Maintenant, à quel niveau puis-je implémenter correctement INotifyPropertyChanged, même si au niveau supérieur ce n'est pas une propriété du tout.

Il est assez facile de voir et d'augmenter le niveau le plus bas, le PropertyObject, mais est-ce suffisant pour que la liaison fonctionne?

Merci, jeff

Répondre

1

Si je vous comprends bien, chaque objet dans le tableau Collection a une propriété appelée Value, qui est ce qui est affiché dans le TextBlock dans votre UserControl. Tant que chaque objet dans le tableau implémente INotifyPropertyChanged, et déclenche l'événement lorsque la valeur de Value change, le texte dans le TextBlock doit être mis à jour (vous devrez peut-être changer le BindingMode en TwoWay également, je ne suis pas sûr cependant).

+0

travaillé comme un charme. Merci. – jeff

Questions connexes