98 votes

WPF Lié à lui-même

J'ai un WPF Window , et quelque part il y a un ListView où je lie un List<string> à.

Maintenant, quelque part dans mes ListView il y a une propriété TextBox et la propriété Content est définie sur {Binding} .

Mais c'est la sténographie. Comment puis-je écrire la liaison complète pour se lier à elle-même?

{Binding Path=Self} ne fonctionne pas, ni {Binding Self} (où ce dernier est un raccourci pour l'ancien).

275voto

Heinzi Points 66519

Réponse courte:{Binding} est pas un raccourci pour "liaison à lui-même" (dans le sens de RelativeSource.L'auto). Plutôt, {Binding} est équivalent à {Binding Path=.}, qui se lie à la source de courant.


Pour élaborer: Une liaison a une source et un chemin d'accès. Vous pouvez faire une "liaison à lui-même", par exemple, en utilisant

<myUIControl myProperty="{Binding RelativeSource={RelativeSource Self}, Path=x}" />

Ceci, cependant, définit la source pour le contrôle de lui-même, donc il va essayer d'accéder à la propriété x de l'INTERFACE utilisateur de contrôle (plutôt que de biens x de l'actuel contexte de données). De la façon dont j'ai compris votre question, ce n'est pas ce que vous voulez; en particulier, il n'est pas ce qu' {Binding} t: {Binding} maintient la source comme il est (généralement de l' DataContext de certains élément parent) et se lie à la source elle-même (l'équivalent d' Path=.).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X