Wie zu wählen Sie ein Element programmgesteuert in eine Flex-Liste nach der dataProvider wird aktualisiert?
So, ich bin etwas neu auf Flex ich möglicherweise fehlt etwas grundlegendes hier. Ich habe eine Spark-List-container, dessen dataProvider-Komponente gebunden ist, um ein ResultSet zurück kommen von einer RemoteObject-Aufruf. Ziemlich standard Sachen.
<s:List id="list" dataProvider="{model.stuff}" width="100%" height="100%"
selectedIndex="@{selectedSlider.value}"
itemRenderer="{stuffRenderer}">
</s:List>
Der selectedIndex-Eigenschaft ist im Zusammenhang mit dem HSlider, aber das ist nicht das problem. Mein Problem ist, dass ich möchte, um automatisch eine bestimmte "bevorzugte" element aus der Liste (nur anfangs...um den Benutzer zu führen).
Habe ich versucht zu tun, in eine creationComplete-Ereignis, aber meine Daten noch nicht aber...Einstellung selectedIndex
funktionierte nicht...es war zu früh.
Was ist der richtige Weg, dies zu tun?
InformationsquelleAutor HDave | 2011-01-02
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
spark.components.List
hatspark.components.SkinnableDataContainer
in seiner Klasse Hierarchie, die löst eindataProviderChanged
Ereignis aus, wenn sich der dataProvider ändert. Leider gibt es keine[Event]
Metadaten inSkinnableDataContainer
, die mit diesem event in MXML. Also, Sie müssen erstellen Sie Ihre eigenen benutzerdefinierten Komponente erweitertList
.Mithilfe Ihrer benutzerdefinierten Komponente können Sie fügen Sie einen Ereignis-listener für
dataProviderChanged
und aktualisieren Sie IhreselectedIndex
entsprechend.BTW: Das funktioniert auch mit anderen
List
-basierten Komponenten (wieDropDownList
) zu.Ich glaube, es sollte funktionieren, wenn du einfach den ersten Wert der slider auf der index, den Sie möchten, ausgewählt zu werden, zumindest am Anfang.
So etwas wie dieses:
Funktionieren sollte.
HTH
FTQuest