js:dataGrid显示空白而不是数据。
dataGrid组件:
<j:VGroup id="VGroupContainer">
<j:Button text="Load Data" width="200" height="60" click="OpenData(event)"/>
<js:DataGrid rowHeight="40" y="200" visible="true" id="dataGrid" width="330">
<js:columns>
<js:DataGridColumn label="Name" dataField="Name" id="nameField" columnWidth="130"/>
<js:DataGridColumn label="SO" dataField="SOname" id="soField" columnWidth="100"/>
<js:DataGridColumn label="Email" dataField="Email" id="emailField" columnWidth="100"/>
</js:columns>
</js:DataGrid>
</j:VGroup>
动态更新数据的功能。作为上下文,我将使用HTTPservice调用从服务器检索数据并相应地更新datagrid。出于测试目的,我使用以下内容:
protected function OpenData(event:MouseEvent):void
{
var obj:Object=new Object();
obj.Name = "record 1"
obj.SOname = "SO1"
obj.Email = "email 1"
var obj2:Object=new Object();
obj2.Name = "record 2"
obj2.SOname = "SO2"
obj2.Email = "email 2"
var obj3:Object=new Object();
obj3.Name = "record 3"
obj3.SOname = "SO3"
obj3.Email = "email 3"
arrData.addItem(obj)
arrData.addItem(obj2)
arrData.addItem(obj3)
dataGrid.dataProvider = arrData;
}
每当我将dataProvider设置为一个值时,dataGrid似乎具有正确的行,但没有数据显示。您实际上可以单击并选择一行,但在视觉上没有任何单元格显示出来:
最近有人在Datagrids的Apache Royale中工作过吗?我想知道我是否正在使用正确的组件。我是从s:Datagrids迁移而来的,从来没有这个问题。
答案 0 :(得分:0)
您正在使用的基本实现被设计为非常轻量级,但是缺少内置的flex实现所附带的一些功能。
如果要从spark进行迁移,则使用spark仿真组件[1]可能会更容易。
如果您想保留轻量级的实现并随需添加功能,则只需添加更改通知器[2]。