2009-07-10 22 views
0

私はプロパティにバインドされているチェックボックスがあります。Flex 3でのイベントディスパッチの順序は何ですか?

<mx:CheckBox label="Show All" selected="{showAll}"/> 

私はチェックボックスがトグルされたときに、変更後showAllの値を読み込みますそのイベントをトリガしたい:

<mx:CheckBox label="Show All" selected="{showAll}" click="_list.refresh()" /> 

この場合、_listはArrayCollectionオブジェクトで、filter関数はshowAllフィールドに依存して値を選択します。

これは機能しないか、少なくとも作業していないという強い外観を示していることがわかります(リストの値は変更されていないものすべてです)。このためのイベントの文書化された順序はありますか。どのイベントがどの順序でディスパッチされるのか、そしてクリックイベントが送出されたときにバインド値の変更が発生するかどうかを調べることができます。代わりに、誰かがこれを行う良い方法をお勧めすることができますか?一般的なローミングサービスで

+1

もっとコードを投稿できますか?私はあなたがおそらく非常に近いと思うが、この問題はそのアプローチの細部または細部にあるかもしれない。また、clickイベントではなくchangeイベントを使用したいと思うかもしれません(ただし、システム全体を見ることなく本当に言うことはできませんでした)。 –

+0

私はあなたが正しいと思う。変更イベントは正しいアプローチのように聞こえます。私はそれを試してみましょう... –

+0

Hm。いいえ。変更イベントはトリックを行うようには見えません。私はフィルタ関数にブレークポイントを設定して、チェックボックスをトグルした後、showAllプロパティはまだチェックボックスの状態を反映していないことがわかります。 –

答えて

2

を参照してくださいINITIALIZEあなたはhあなたのデータバインディングを後ろ向きにする...クリックまたは変更イベントでチェックボックスの状態を変更しても、showAll変数は更新されません。それ以外の方法で動作します... showAllブール値を変更すると、チェックボックスの状態が自動的に選択または選択解除に更新されます。

関連する問題