【问题标题】:flex 3 datagrid and xmllistcollectionflex 3 数据网格和 xmllistcollection
【发布时间】:2010-12-22 12:11:34
【问题描述】:

我试图在我的数据网格的不同字段中显示 xmllistcollection 的内容,但是除非我使用 itemrenderer,否则该值不会显示在网格中。

xmllistcollection 是通过 web 服务调用填充的。在我的项目渲染器中,我使用自定义命名空间从 xmllistcollection 检索内容

value.ns::firstName

但是,如果我在数据网格中尝试类似 dataField = "ns::firstName" 之类的东西而不使用项目渲染器,我将没有数据输出。

谁能帮帮我?

【问题讨论】:

    标签: apache-flex datagrid itemrenderers


    【解决方案1】:

    使用labelFunctionproperty

    <mx:DataGrid dataProvider="{xml.ns::user}">
        <mx:columns>
            <mx:DataGridColumn labelFunction="nameLabelFunc" headerText="Name"/>
            <mx:DataGridColumn labelFunction="ageLabelFunc" headerText="Age"/>
        </mx:columns>
    </mx:DataGrid>
    <mx:XML source="data.xml" id="xml"/>
    <mx:Script>
        <![CDATA[
            import mx.controls.dataGridClasses.DataGridColumn;
            private var ns:Namespace = new Namespace("http://www.adobe.com");
            public function nameLabelFunc(item:Object, col:DataGridColumn):String
            {
                return item.ns::name;
            }
            public function ageLabelFunc(item:Object, col:DataGridColumn):String
            {
                return item.ns::age;
            }
        ]]>
    </mx:Script>
    

    data.xml

    <userInfo xmlns="http://www.adobe.com">
      <user>
        <name>John</name>
        <age>34</age>
      </user>
      <user>
        <name>Gessy</name>
        <age>32</age>
      </user>
    </userInfo>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-01
      • 1970-01-01
      • 2011-02-24
      • 2011-07-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多