2009-09-03 15 views
1

バインドされたArrayCollectionに複数のアイテムがある場合にコンボボックスを表示するフォームを設定しようとしています。一品。私はこのクラスを作成することでこれを試みましたが、残念ながら、私がバインドしたデータプロバイダは、セッターが実行された時点で決して空ではありません。私はこれにアプローチすべき別の方法がありますか?Flex:データバインディングイベントの内容に基づいてコントロールプロパティを変更する

public class ComboboxOrFail extends ComboBox 
{ 
    public function ComboboxOrFail() 
    { 
     super(); 
    } 

    public override function get dataProvider():Object 
    { 
     return super.dataProvider; 
    } 

    public override function set dataProvider(value:Object):void 
    { 
     this.visible = (value && value.length && value.length > 1); 
     super.dataProvider = value; 
    } 
} 

答えて

1

私は別の方法でこれをやった:

<mx:ComboBox dataProvider="{myData}" visible="{myData != null &amp;&amp; myData.length > 1}"/> 

はMYDATAがバインド可能であると仮定すると、これはトリックを行う必要があります!

関連する問題