2010-03-16 6 views
1

Où puis-je trouver de la documentation sur la liaison de données/éléments? Mes recherches Google n'ont pas beaucoup évolué. J'avais une classe personnalisée avec deux propriétés nommées Texte et Valeur. Lorsque j'ai essayé de lier une liste à une liste, cela ne fonctionnait pas. Par hasard, je modifed mon DataTemplate de cetteLiaison d'éléments dans Silverlight

<TextBox Text="{Binding Text}"></TextBox> 

à cette

<TextBox Text="{Binding Path=Text}"></TextBox> 

et tout fonctionnait très bien. J'ai besoin de documents/échantillons complets pour la liaison de données/éléments. Je ne comprends pas pourquoi certains exemples ont l'ensemble path alors que d'autres ne le font pas. Une explication complète de cela, et tous les autres bon à savoir conseils seraient très appréciés.

MISE À JOUR

est ici la classe que je utilise. Il est une simple classe d'aide afin que je puisse traduire la valeur/texte d'un ENUM dans mon listbox

public class Item 
{ 
    private string _Text = "Test"; 
    public string Text 
    { 
     get { return _Text; } 
     set { _Text = value; } 
    } 

    private string _Value = "1"; 
    public string Value 
    { 
     get { return _Value; } 
     set { _Value = value; } 
    } 
} 

Répondre

2

Pas grand-chose, mais voici un peu pour vous aider à démarrer:

documentation MSDN est ici: http://msdn.microsoft.com/en-us/library/cc278072(VS.95).aspx

Cette page explique les chemins peu plus en détail: http://msdn.microsoft.com/en-us/library/system.windows.data.binding.path.aspx

Quant à savoir pourquoi votre exemple ne fonctionne qu'avec la clause de chemin, je vais avoir besoin de voir la classe vous lier à.

+0

J'ai fait une mise à jour avec ma classe simple. Merci pour votre message aussi! – Matt

+0

+1 Pour http://msdn.microsoft.com/en-us/library/cc278072(VS.95).aspx – DaveB

+0

Je viens juste de le lancer dans VS. Vos deux exemples sur le dessus travaillent pour moi. D'après ce que je comprends, la clause Path est pour une navigation plus complexe des méthodes/propriétés (ie tout ce qu'ils pourraient vous lancer), alors que la liaison normale est juste une propriété. –

1

En théorie, vos deux exemples de liaison sont équivalents. Le Path= est facultatif si votre chemin est la première partie de la clause Binding. Par conséquent, si l'un de vos exemples se comporte différemment, il est dû à un bogue dans Silverlight ou à un changement effectué ailleurs sans le savoir.

Voici la documentation Silverlight sur le chemin: http://msdn.microsoft.com/en-us/library/cc645024(v=VS.95).aspx

est ici la documentation Silverlight pour {Binding}: http://msdn.microsoft.com/en-us/library/cc189022(VS.95).aspx