Commit nuovo valore da itemEditor prima itemEditEnd evento
-
21-09-2019 - |
Domanda
Ho un DataGrid, con itemEditor
come NumericStepper
in alcune colonne. Quando un valore in DataGrid viene modificato, vorrei aggiornare diversi valori visualizzati sullo schermo, e così vuole chiamare una funzione updateValues()
.
In primo luogo, ho aggiunto questa funzione per itemEditEnd
caso di DataGrid
, ma la funzione è sempre chiamato prima che il nuovo valore viene aggiornato nel dataProvider
e, di conseguenza, i valori che ho in funzione sono i vecchi valori. C'è qualche altro evento che viene generato dopo che i valori vengono aggiornati in dataProvider
? o mi sto perdendo qualcosa?
In secondo luogo, ho provato a mettere questa funzione in caso cambio di ogni itemEditor
(duh!), Ma poi di nuovo, l'evento di modifica viene licenziato, ma i valori nel dataProvider
sono quelli vecchi.
C'è un modo per rendere la funzione updateValues()
essere chiamato, ogni volta che un valore viene modificato e aggiornato nel dataProvider
, perché c'è dove mi sto prendendo i valori da?
Grazie mille.
Soluzione
"Nella tua listener di eventi, è possibile esaminare i dati inseriti nel editor di oggetto. Se i dati non è corretto, è possibile chiamare il metodo preventDefault () per fermare Flex di passare i nuovi dati di nuovo al controllo list-based e di chiudere l'editor." ( fonte )
Quindi sì, esso viene chiamato prima il dataprovider ha i dati.
Ecco cosa si dovrebbe leggere: Rilevamento modifiche Datagrid . Parla di tutta la stessa roba. priorità dell'evento è il biglietto. Troppo complicato è il modo Flex. Cin cin.