WPF TextBox LostFocus come proprietà associata
-
29-09-2019 - |
Domanda
Ho una griglia con molte caselle di testo e voglio chiamare il metodo NotifyPropertyChanged()
per aggiornare alcuni altri controlli ogni volta che una di queste caselle di testo modificato il valore = perso la messa a fuoco ( Non voglio per uso PropertyChanged
come UpdateSourceTrigger
)
Questo è quello che posso fare:
<Grid TextBoxBase.TextChanged="My_TextChanged" >
...
</Grid>
Ho bisogno di qualcosa di simile:
TextBoxBase.OnLostFocus
Soluzione
Utilizzare l'evento attenzione perduto
TextBox.LostFocus="OnTextBoxLostFocus"
Filtro per textboxes;)
private void OnTextBoxLostFocus(object sender, RoutedEventArgs e)
{
if(!(e.OriginalSource is TextBox))
return;
//Do stuff
}
Se le proprietà non vengono modificate, le vostre caselle di testo non verrà aggiornato però. Si dovrebbe considerare mutando i dati quelle altre caselle di testo sono tenuti a, invece di utilizzare LostFocus per aggiornare il modello.
In bocca al lupo!
Altri suggerimenti
TextBoxBase.LostFocus
è, ho il sospetto, l'evento che state cercando.
E 'elencati qui: http: / /msdn.microsoft.com/en-us/library/system.windows.controls.primitives.textboxbase_events.aspx - ma è definito in UIElement
- in modo forse volete provare UIElement.LostFocus
se quanto sopra non funziona in markup.