konto usunięte

Temat: [bindable] na parę komponentów

Witam.
Mam taki problem. Nie wiem jak prawidłowo powinienem wiązać (flex 3) dane z modelem/
Mamy dane jakiś tam kod modelu:
[Bindable]
public class Property
{
public var id:Number;
public var ksiegaWieczysta:String;
public var obreb:Number;
... itd
cały obiekt tego typu jest przypisywany z komponenta w widoku:
PropertyEditor1.dataSource=__model.detailProperty;

w środku widoku jest Dodatkowy komponent:
<ns1:KsiagaProperty id="idKsiagaProperty"
ArkuszMapy="{dataSource.arkuszMapy}"
NrTeczki="{dataSource.nrTeczki}"
AdresUlica="{dataSource.adresUlica}"
AdresNumer="{dataSource.adresNumer}"
KsiegaWieczysta="{dataSource.ksiegaWieczysta}"/>
...który to dopiero wyciąga elementarne dane:
[Bindable]
public var editable:Boolean=true;
[Bindable]
public var KsiegaWieczysta:String;
[Bindable]
public var ArkuszMapy:String="";
.....
<mx:TextInput id="formKsiegaWieczysta" text="{KsiegaWieczysta}" enabled="true" editable="{editable}"/>

i tu moje pytanie co zrobić aby zmiany w kontrolkach odzwierciedlały się na zawartości zmiennej (i atrybutu) PropertyEditor1.dataSourc

Proszę o sugestie.Dawid Ś. edytował(a) ten post dnia 05.06.10 o godzinie 01:05
Piotr Zarzycki

Piotr Zarzycki Open Source
Developer

Temat: [bindable] na parę komponentów

Witam.

Jednym z rozwiązań mogło by być "nasłuchiwanie" zmian (czyli obsługa zdarzenia change kontrolki) w tym zdarzeniu przypisanie wartości z kontrolki do odpowiedniej właściwości. To mogło by być dowolne zdarzenie w którym występuję reakcja na zmianę wartości w kontrolce.

konto usunięte

Temat: [bindable] na parę komponentów

Piotr Zarzycki:
Witam.

Jednym z rozwiązań mogło by być "nasłuchiwanie" zmian (czyli obsługa zdarzenia change kontrolki) w tym zdarzeniu przypisanie wartości z kontrolki do odpowiedniej właściwości. To mogło by być dowolne zdarzenie w którym występuję reakcja na zmianę wartości w kontrolce.
Dziękuje za odpowieź.
A gdyby (gdybam bo jeszcze nie sprawdzałem) wykorzystać przy odpowiednich kontrolkach BindingUtils.bindProperty + zdarzenie post inicjacyjną kontrolki, I związać wartość z odpowiednia zmienna (Atrybutem). Bo z tego co widzę to problemu nie ma z przekazywaniem wartości zmiennej do kontrolek. Problem jest w drugą stronę. (Może do końca jeszcze nie rozumiem jak działa [Bindable])
Robert M.

Robert M. UX/UI Designer, Full
Stack Developer

Temat: [bindable] na parę komponentów

Nie wiem czy dobrze zrozumiałem problem, ale wystarczy dodać znak "@" - wtedy bindowanie działa w "dwie strony".

Np:
NrTeczki="@{dataSource.nrTeczki}"

konto usunięte

Temat: [bindable] na parę komponentów

Robert M.:
Nie wiem czy dobrze zrozumiałem problem, ale wystarczy dodać znak "@" - wtedy bindowanie działa w "dwie strony".

Np:
NrTeczki="@{dataSource.nrTeczki}"
Dzięki za podpowiedź ale to działa w flex 4 tu kod pisze w flex 3 a tam dodaje @ do wartości.Dawid Ś. edytował(a) ten post dnia 05.06.10 o godzinie 12:41

konto usunięte

Temat: [bindable] na parę komponentów

Rozwiązałem problem dość kodo twórczo to znaczy. Zdefiniowałem zdarzenie ChangleEvent w komponencie zagnieżdżonym KsiagaProperty . W środku komponentu na kontrolkach pisze
<mx:TextInput id="formKsiegaWieczysta" text="{KsiegaWieczysta}" enabled="true" editable="{editable}"
change=" this.KsiegaWieczysta=formKsiegaWieczysta.text;
dispatchChangleEvent()
"/>

na nim samym obsługa. wyglada dosc tasiemcowato
<ns1:KsiagaProperty
id="idKsiagaProperty"
ArkuszMapy="{dataSource.arkuszMapy}"
.........
ChangleEvent="
dataSource.ksiegaWieczysta=idKsiagaProperty.KsiegaWieczysta;
..............................
"/>

czy może ktoś ma pomysł jak ominąć takie ilości kodu aby same wiązania danych wystarczyły.Dawid Ś. edytował(a) ten post dnia 07.06.10 o godzinie 20:40



Wyślij zaproszenie do