2009-08-31 7 views
0

私は、Flex 3アプリケーションのドロップダウンボックスを埋めるために、テーブルの内容を取得しています:データベースのエントリとメタ値の組み合わせでリストをどのように埋めるべきですか?

<mx:ComboBox dataSource="{myList}" /> 

リストは人物のデータベーステーブルの内容が移入されます。

Public, John Q 
Doe, Jane 
... 

しかし、コンボボックスにはデータベースから来ない他のメタエントリも必要です。

ALL 
ALL MEN 
ALL WOMEN 
Public, John Q 
Doe, Jane 
... 

これを行うにはどのような方法が最適ですか?

答えて

1

"mylist"の設定者を上書きし、値を配列に挿入します。

public function set myList(value:Array):void { 
    this._myList = ["ALL MEN", "ALL_WOMEN"].concat(value); 
    this.dispatch(new FlexEvent(FlexEvent.DATA_CHANGE)); 
} 
+0

これは少し... clunkyのようです。また、他の状況でプログラムによるアクセスのためにmyListの値が必要な場合、これは機能しません。 –

+0

そうです。 _mylistを返すゲッターを作成し、それには2つの新しい値が含まれています。あなたは好きなだけエレガントにしようとすることができますが、これはバリエーションです。多分あなたはコンボボックスをオーバーライドし、誰かがデータプロバイダを割り当てるときにこれらの余分なものを挿入したいでしょう。 – Glenn

+0

私は少し違った場所でこれをやった。私の配列コレクションのソースフィールドは、この連結を実行します。なぜなら、特別な取り扱いの知識がそこにあるからです。 –

関連する問題