1

以编程方式将 arrayCollection 设置为组合框的 dataProvider 时,如果 arrayCollection 只有一个元素,我需要做一个小的验证:

> public resultHandler(event:ResultEvent):void{

   arrColl = event.result.FlexData.ListData as ArrayCollection; 

//to check if the arrColl has only one element 

if(arrColl == null)
      myComboBox.dataProvider = event.result.FlexData.ListData

else

 myComboBox.dataProvider = arrColl;

}

我想知道,是否有办法每次都跳过此验证。有没有办法设置 dataProvider,这样我就不必检查集合是否有一个或多个元素?

4

1 回答 1

3

没有内置的方法可以做到这一点。

您需要:

  • 创建一个执行此操作的实用程序方法。例如

    myComboBox.dataProvider = ComboBoxUtil.setDataProvider(collection);
    
  • 子类化 ComboBox 控件并覆盖 dataProvider 设置器,您可以在其中包含此逻辑

于 2011-02-14T12:14:26.530 回答