In superficie, è il più semplice:
<mx:ComboBox id="myComboBox"
dataProvider="{myDataProvider}"
selectedItem="{defaultItem}"/>
Quando si imposta defaultItem (assicurarsi che sia [Bindable]) per una delle voci nel fornitore di dati, si aggiornerà il controllo.
Ma ci sono problemi con questo approccio. A meno che currentDefaultItem non cambi sempre AFTER myDataProvider, il binding a dataProvider può annullare la selezione, ripristinando il valore predefinito (primo elemento nell'elenco).
Un modo per aggirare questo è forzare selectedItem ad essere in estensione dopo dataProvider, includendo dataProvider nella chiamata che fornisce l'oggetto selezionato.
<mx:ComboBox id="myComboBox"
dataProvider="{myDataProvider}"
selectedItem="{getSelectedItem(myComboBox.dataProvider, defaultItem)}"/>
Quello che fa è garantire selectedItem sarà rimbalzo quando entrambi i cambiamenti currentDefaultItem, o dopo le modifiche dataProvider. Sarei interessato anche ad altre soluzioni.
fonte
2009-04-29 19:12:28
Ho notato con selectedIndex. – Panzercrisis