flex – AdvancedDataGrid不显示对象属性

前端之家收集整理的这篇文章主要介绍了flex – AdvancedDataGrid不显示对象属性前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有以下数据:
var data: ArrayCollection = new ArrayCollection(
            [
                { name: "ProductA",user: {login: "loginA",email: "emailA"} },{ name: "ProductB",user: {login: "loginB",email: "emailB"} },{ name: "ProductC",user: {login: "loginC",email: "emailC"} }
            ]
        );

这个数组是我的AdvancedDataGrid的数据提供者:

<mx:AdvancedDataGrid dataProvider="{data}">
    <mx:columns>
        <mx:AdvancedDataGridColumn headerText="Product" width="55" dataField="name" /> 
        <mx:AdvancedDataGridColumn headerText="User" dataField="user.login" />
        <mx:AdvancedDataGridColumn headerText="Email" dataField="user.email" />
    </mx:columns>
</mx:AdvancedDataGrid>

问题是 – AdvancedDataGrid不显示嵌套的User对象的属性,但是简单的DataGrid会显示.
这有什么不对?

解决方法

您需要使用labelFunction或itemRenderer.这是labelFunction的一个例子
<mx:AdvancedDataGridColumn headerText="User" labelFunction="getUserLogin" />

哪个叫

private function getUserLogin(item:Object,column:AdvancedDataGridColumn) {
  return item.user.login;
}

item参数将是您的单元格正在接收的数据.

原文链接:https://www.f2er.com/flex/241620.html

猜你在找的Flex相关文章