1

Je veux avoir une zone de texte ajouter une chaîne spécifique une fois les onglets utilisateur hors du contrôle, à savoir LostFocus, mais je préfère la zone de texte pour valider les types d'utilisateurs, donc UpdateSourceTrigger est réglé à PropertyChanged.WPF liaison de données avec StringFormat lorsque UpdateSourceTrigger est PropertyChanged

Existe-t-il un moyen de faire fonctionner cela dans WPF?

Regardé ce question qui est similaire mais se demandant s'il y a une solution plus propre?

Mon XAML est:

<TextBox Text="{Binding Path=MyBindingPath, 
          StringFormat='\{0} -HELLO', 
          TargetNullValue={x:Static sys:String.Empty}, 
          ValidatesOnDataErrors=True, 
          NotifyOnValidationError=True,  
          UpdateSourceTrigger=PropertyChanged}"/> 

Répondre

1

Vous pouvez définir UpdateSourceTrigger Explicite et dans le gestionnaire d'événements TextChanged de la zone de texte que vous pouvez appeler explicitement UpdateSource après avoir effectué les choses que vous voulez.

//write the code you want to run first and then the following code 
BindingExpression exp = this.textBox1.GetBindingExpression(TextBox.TextProperty); 
exp.UpdateSource();