Frage

Hi
Ich habe einen Code. Ich benutze Cairngorm.
Ich erstelle einen einfachen Befehl, Controller, Ereignis, Modellocator, Modell und Ansicht.
Meiner Ansicht
<s:TextInput id="textInputName" width="100%" text="{modelLocator.model.value}" valueCommit="modelLocator.model.value = textInputName.text"/>
<mx:HRule width="100%"/>
<s:Button width="100%" label="Reset" click="reset()"/>
Wenn ich anfange, ist der Text des TextInputs der Wert des "Wertes" meines Modells.
Wenn ich den Wert des Textinputs ändere, ändert es den Wert meines Modells.
Aber wenn ich zurücksetze, sendet es ein Ereignis und der Befehlssatz "Wert" des Modells an "", aber der Text des TextInputs ändert sich nicht.
Wieso den? Ändert sich der Wert des TextInputs nicht, da sich der Wert des "Wertes" des Modells ändert?
Wenn nicht, was muss ich tun, um es zu tun?

War es hilfreich?

Lösung

Stellen Sie sicher, dass der Wert im Modell bindbar ist.

Als Randnotiz können Sie anstatt ein wertvolles Ereignis zu verwenden, die in Flex 4 verfügbare bidirektionale Bindungsfunktion verwenden können:

<s:TextInput id="textInputName" width="100%" text="@{modelLocator.model.value}"/>

Wenn der Wert aktualisiert wird, wird auch die Texteigenschaft aktualisiert (bereitgestellt, der Wert ist bindbar) und umgekehrt umgekehrt

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top