Je voudrais utiliser la liaison de données lors de l'affichage des données dans une TextBox. Je fais essentiellement comme:
public void ShowRandomObject(IRandomObject randomObject) {
Binding binding = new Binding {Source = randomObject, Path = new PropertyPath("Name")};
txtName.SetBinding(TextBox.TextProperty, binding);
}
Je n'arrive pas à trouver un moyen de désactiver la liaison. J'appellerai cette méthode avec beaucoup d'objets différents mais la TextBox restera la même. Existe-t-il un moyen de supprimer la liaison précédente ou cela se fait-il automatiquement lorsque je configure la nouvelle liaison?
Alternativement:
BindingOperations.ClearBinding(txtName, TextBox.TextProperty)
Que diriez-vous:
this.ClearValue(TextBox.TextProperty);
C'est beaucoup plus propre je pense;)
Que diriez-vous juste
txtName.Text = txtName.Text;
Vous devrez de toute façon définir la valeur après l'avoir effacée. Cela fonctionne au moins dans SL4.