通过 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的主要内容,如果未能解决你的问题,请参考以下文章
将 WPF xaml 绑定到 ViewModel 而不构造它