代码之家  ›  专栏  ›  技术社区  ›  Kung Fu Ninja

组合框数据提供者

  •  1
  • Kung Fu Ninja  · 技术社区  · 17 年前

    我有以下几点:

     <mx:RemoteObject id="myCFC" destination="ColdFusion" source="components.myCFC"  showBusyCursor="true">
        <mx:method name="getStuff" result="UserHandler(event);"/>
    </mx:RemoteObject>
    
    ...
    <mx:ComboBox id="propertyCode" dataProvider="{qry_stuff}" labelField="name" />
    

    指数以及:

       [Bindable] public var qry_stuff:ArrayCollection = new ArrayCollection;
    
     private function UserHandler(event:ResultEvent):void {
       qry_stuff= event.result as ArrayCollection;
     }
    
    public function init():void {
      /* call my remote Object to get my data */
       myCFC.getStuff();
      }
    

    我的问题是组合框显示[对象]

    我知道cfc没有问题,getStuff中有一个名为“name”的字段。为什么不显示对象的值? 提前谢谢。

    2 回复  |  直到 17 年前
        1
  •  1
  •   David Tucker    17 年前

    ComboBox类中有一个名为labelField的属性。继续,并将其设置为返回的数据上的name字段。如果这不起作用——您需要调试从CF返回的值——以确保name属性实际上也在客户端填充。

    此外,数据可能以数组(而不是ArrayCollection)的形式返回,在这种情况下,您需要设置:

    qryStuff = ArrayCollection( event.result as Array );
    

    注意:您可能还希望通过创建ActionScript值对象来“强类型”您的响应数据,这样它就不仅仅是从CF返回的通用“对象”。然后您可以使用[RemoteClass(alias=“com.sample.MyCFC”)]元数据标记将该值对象映射到服务器端VO。

        2
  •  0
  •   Kung Fu Ninja    16 年前

    在cfc中,我必须明确设置数据/标签。

    推荐文章