A découvrir d'urgence : Ekioo, le blog de ma société

dimanche 14 décembre 2008

Binding en Silverlight 2.0

Avec WPF, Microsoft à introduit une nouvelle façon de lier des données aux contrôler par la syntaxe {Binding}. Cette syntaxe est très légère et incroyablement efficace lorsqu'on sait s'en servir. Vous pouvez consulter DataBinding Quick Reference pour faire un tour d'horizon de cette syntaxe.

Silverlight lui aussi permet de faire du binding de cette façon, mais de façon plus limité. Par exemple, le très utile ElementName, qui permet de cibler un autre contrôle par son nom, n'est pas disponible. En WPF, il suffit de faire comme le décrit Pascal Cabanel sur son blog.

Pourtant, avec Silverlight, c'est un peu plus complexe. La façon la plus simple est de passer par des évènements et de mettre à jour les DataContexte de chaque contrôle à chaque changement. Ca marche très bien, surtout si l'application n'est pas très complexe.

La solution qui est recommandée par Microsoft, je l'ai trouvé sur un ce webcast. Il faut créer une classe intermédiaire qui implémente INotifyPropertyChanged, un Controller, et qui va faire le lien entre tous les contrôles et sur lequel va reposer tout notre binding.

Aucun commentaire: