2010-08-14 2 views
0

Disons que j'ai un contrôle WPF personnalisé et deux zones de texte dessus. Dans le code derrière mon contrôle personnalisé j'ai quelques propriétés qui sont des références à objets dans un autre contrôle. Par exemple j'ai un sth comme cecitextbox - textbinding dans WPF

public MyClass myObject 
    { 
     get 
     { 
      return MyObject 
     } 
    } 

MyClass ont un nom de propriété. Est-il possible de lier le nom de la propriété à textBox.Text ??

Je Konow que je peux faire qqch comme ça dans XAML

<TextBox> 
<TextBox.Text> 
    <Binding Path="" /> 
</TextBox.Text> 
</TextBox> 

Mais comment puis-je transmettre des données à partir myObject à la valeur Path ??


J'ai expérimenté avec des liaisons, mais il semble que parfois ma zone de texte n'actualise pas/ne met pas à jour la propriété Text. Je veux dire parfois rafraîchissement de textbox (je pense) et je vois une nouvelle valeur mais parfois rien ne se passe (malgré le fait que j'ai modifié les données)

Répondre

0

En supposant que le DataContext est le même que votre contrôle. Le chemin sera

Path="myObject.MyPropery" 

ou pour de courtes

<TextBox Text="{Binding myObject.MyProperty}" /> 
+0

merci :) Disons que je modifie myObject.MyProperty. Je comprends que grâce à la liaison de données ma boîte de texte montrera une nouvelle valeur ou peut-être que je dois rafraîchir la zone de texte? – Dante

+0

Tant que la propriété que vous liez aux incendies notifypropertychanged dans son setter, vous devriez être bien – hkon