2010-10-10 3 views
6

La mia app. contiene la finestra nella foto:DataGrid, TextBox - binding e aggiornamenti istantanei

alt text

L'ItemsSource del DataGrid è impostata su _editList (dichiarata come IList < fornitore> _editList;).

La griglia di dati è impostata su Sola lettura.

Il Venditore Nome casella di testo ha il set vincolante: Text = "{Binding ElementName = dataGridVendors, Path = SelectedItem.Name, Mode = TwoWay}"

questo funziona bene. Tuttavia, poiché è la cella Nome del fornitore, aggiorna solo quando l'utente ha terminato di digitare nella casella di testo Nome del venditore e fa clic su qualcos'altro. Dire che voglio cambiare il nome del venditore in "John Lennon II". Devo fare clic sulla casella di testo e digitare i caratteri che voglio aggiungere e quindi devo cliccare su qualcos'altro e solo allora il datagrid effettua l'aggiornamento.

Voglio eseguire l'aggiornamento mentre l'utente digita i caratteri .... È possibile?

saluti, Sebastian

risposta

14

Aggiungere l'UpdateSourceTrigger alla rilegatura

Text="{Binding ElementName=dataGridVendors, Path=SelectedItem.Name, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" 

suo trigger di default è perduto fuoco. Quando lo cambi in PropertyChanged, gli aggiornamenti verranno eseguiti durante la digitazione.

+0

grazie mille! Lo apprezzo davvero ! – MadSeb