Dans WPF, nous pouvons mettre à jour le modèle de données sous-jacent chaque fois que l'utilisateur apporte une modification des données en tirant parti de la mise à jour des updatesTourceRigger, comme suit ceci: dans les mises à jour du téléphone de la fenêtreTourcetrigger n'a pas été incluse dans la spécification XAML. Et pour accomplir la même chose, un gestionnaire textuel était nécessaire comme celui-ci: P> (sender as TextBox).GetBindingExpression(TextBox.TextProperty).UpdateSource();
3 Réponses :
Jerry,
Le modèle que vous devriez utiliser serait la mise en œuvre inotifyPropertychangned. Heres et exemple de MSDN: http://msdn.microsoft.com/en-us /library/ms229614.aspx p>
De cette manière, tout objet XAML qui est lié à une propriété de support ou à un champ, sera notifié lorsque la valeur du champ de support a changé, à cause de l'appel à la méthode notifypropertyChanged (). p>
Si vous deviez mettre en œuvre ce modèle, vous ne devez définir explicitement de définir explicitement quand mettre à jour l'interface utilisateur, tous les elelements d'interface utilisateur liés à la notifiable possédant la mise à jour lorsque vous vous attendez à la mise à jour. Changements source. P>
pour les classes qui implémentent inotifypropertychanged p>
J'utilise un extrait pour créer la plupart de mes propriétés comme celle-ci (s'il y a une chance qu'ils seront liés ou devront en informer une autre Objet): P>
private PropertyChangedEventArgs myVarChangedEventArgs = new PropertyChangedEventArgs("MyProperty"); private int myVar; public int MyProperty { get { return myVar; } set { if (myVar != value) { myVar = value; NotifyPropertyChanged(myVarChangedEventArgs); } } }
Désolé mate, cela implémente juste la liaison. Cela ne résout pas le problème. Essayez de l'exécuter et vous verrez que le setter ne se déclenche pas tant que l'utilisateur quitte la zone de texte.
Il semble qu'il n'y a pas de Encore cela ne résout pas le problème lui-même ... (il est vraiment triste) p>
Voir aussi: p>
GetBindingExpression code> ou solution de contournement équivalente. Cependant, vous pouvez étendre la zone de texte comme celui-ci: https: //mytoolkit.svn. codeplex.com/svn/WinRT/Controls/ExtendedTextBox.cs p>
Comment cela peut-il être manquant? Je suppose que MS Dog-Fooding s'est arrêté concernant RT XAML?
Je pense qu'il est corrigé dans Win8.1: MSDN.MicRosoft .com / fr-nous / données / ...
AH, et mises à jourOrciggerCetrigger code> est là. Seigneur! Quel ou quelle surveillance.
Il semble que Windows Store Textbox - Comment mettre à jour Reliure sur la touche Entrée? P> mises à mises à jourTourcetrigger code> et
getBindingExpression code> sont disponibles sous Windows 8.1. Grâce à Rico Suter ci-dessus et à la production HDW de cette question: P>