通过 ActionScript 将数据绑定到 DataGrid

Posted

技术标签:

【中文标题】通过 ActionScript 将数据绑定到 DataGrid【英文标题】:Binding data to DataGrid through ActionScript 【发布时间】:2011-03-09 11:27:19 【问题描述】:

我正在尝试将从服务器传入的 ArrayCollection 结果绑定到我的 DataGrid 在 AS 中动态创建。

结果数据未显示在网格中。

var dg:DataGrid = new DataGrid();
dg.width=650; 
dg.dataProvider=someArrayCollfromServer;

我根据 XML 中的一些数据将 dgColumn 添加为运行时,它与以下静态格式中定义的相同。

但如果我使用相同的代码并将 DataGrid 创建为如下所示的 Flex 组件,它就可以正常工作。

<mx:DataGrid id="dg"   dataProvider="someArrayCollfromServer">
<mx:columns>
<mx:DataGridColumn dataField="Value" headerText="Value"/>
<mx:DataGridColumn dataField="Code" headerText="Code" />
</mx:columns>
</mx:DataGrid>

这很好用。就 Flex 和 AS 中的 DataGrid 而言,是否存在一些不同的功能或实现。

这里有什么问题吗?

【问题讨论】:

【参考方案1】:

dg.dataProvider=someArrayCollfromServer; 只是将变量someArrayCollfromServer 的当前值(如果尚未填充,则可能为空)分配给dataProvider。要获取数据绑定,请将该行替换为:

BindingUtils.bindProperty(dg, "dataProvider", this, "someArrayCollfromServer");

并确保someArrayCollfromServer[Bindable]

【讨论】:

以上是关于通过 ActionScript 将数据绑定到 DataGrid的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ActionScript 类中实现数据绑定?

在 ActionScript 中刷新数据网格时保持选择

将 WPF xaml 绑定到 ViewModel 而不构造它

ActionScript 3 错误 JSON 解析输入无效

C#将datatable生成easyui的绑定tree 的json数据格式

ActionScript 3 使用swfobjects将数据发送到闪存