Apache flex 如何在AdobeFlex中添加datagrid列名
我对datagrid的定义如下Apache flex 如何在AdobeFlex中添加datagrid列名,apache-flex,datagrid,Apache Flex,Datagrid,我对datagrid的定义如下 <mx:DataGrid id="dg" width="100%" height="100%" > 在这一部分中,我将尝试从数据库中获取详细信息,并为DataGrid设置dataProvider,如下所示 var arrayContent:ArrayCollection = new ArrayCollection(); for(var i:int=0;i<assetClassDetails.length;
<mx:DataGrid id="dg" width="100%" height="100%" >
在这一部分中,我将尝试从数据库中获取详细信息,并为DataGrid设置dataProvider,如下所示
var arrayContent:ArrayCollection = new ArrayCollection();
for(var i:int=0;i<assetClassDetails.length;i++)
{
var assetClass_:AssetItemClassVO = new AssetItemClassVO();
var array:ArrayCollection = new ArrayCollection();
var embeddableLocale:EmbeddableAssetItemClassLocale = new EmbeddableAssetItemClassLocale();
var assetClassD_:AssetItemClassLocale = new AssetItemClassLocale();
assetClass_ = assetClassDetails.getItemAt(i) as AssetItemClassVO;
array = assetClass_.assetItemClassLocale;
if(assetClass_ != null && array != null && array.length >0)
{
assetClassD_ = array.getItemAt(0) as AssetItemClassLocale;
arrayContent.addItem(new Array(assetClass_.id,assetClassD_.name,assetClassD_.description,assetClassD_.locale,assetClass_.createdby,assetClass_.createdtime,assetClass_.lastmodifiedby,assetClass_.lastmodifiedtime));
}
}
dg.dataProvider = arrayContent;
var arrayContent:ArrayCollection=new ArrayCollection();
对于(变量i:int=0;i0)
{
assetClassD=数组。getItemAt(0)作为AssetItemClassLocale;
arrayContent.addItem(新数组(assetClass_U1;id、assetClass_U1;name、assetClass_U1;description、assetClass_U1;locale、assetClass_U1;createdby、assetClass_U1;createdtime、assetClass_U1;lastmodifiedby、assetClass_U1;lastmodifiedtime));
}
}
dg.dataProvider=阵列内容;
但这样做之后,我得到的列名是1,2,3,4,5…8。
但我想将列名称设置为ID、name、Description、Locale、CreatedBy、CreatedTime、LastModifiedBy、LastModifiedTime
我该怎么做
请提供帮助。不能100%确定您要做什么,但这里有一个DataGrid数据绑定的示例。希望能有帮助
<?xml version="1.0" encoding="utf-8"?>
<mx:Application initialize="init()"
xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable]
private var employees:ArrayCollection;
private function init():void
{
employees = new ArrayCollection();
employees.addItem({name: "Oscar", phone: "907.123.4567", email: "oscar@isacat.net"});
employees.addItem({name: "Nimrod", phone: "907.876.5342", email: "nimrod@isacat.net"});
}
]]>
</mx:Script>
<mx:DataGrid id="dg" color="0x323232" width="100%" rowCount="3" dataProvider="{employees}">
<mx:columns>
<mx:DataGridColumn dataField="name" headerText="Name"/>
<mx:DataGridColumn dataField="phone" headerText="Phone"/>
<mx:DataGridColumn dataField="email" headerText="Email"/>
</mx:columns>
</mx:DataGrid>
</mx:Application>
不能100%确定您要做什么,但这里有一个DataGrid数据绑定的示例。希望能有帮助
<?xml version="1.0" encoding="utf-8"?>
<mx:Application initialize="init()"
xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable]
private var employees:ArrayCollection;
private function init():void
{
employees = new ArrayCollection();
employees.addItem({name: "Oscar", phone: "907.123.4567", email: "oscar@isacat.net"});
employees.addItem({name: "Nimrod", phone: "907.876.5342", email: "nimrod@isacat.net"});
}
]]>
</mx:Script>
<mx:DataGrid id="dg" color="0x323232" width="100%" rowCount="3" dataProvider="{employees}">
<mx:columns>
<mx:DataGridColumn dataField="name" headerText="Name"/>
<mx:DataGridColumn dataField="phone" headerText="Phone"/>
<mx:DataGridColumn dataField="email" headerText="Email"/>
</mx:columns>
</mx:DataGrid>
</mx:Application>
我不确定arraycollection上的数据,也许您可以检查我的代码,我在Datagrid上创建了动态表
private function addDataGridParamColumn(tmp:String):void
{
var dgColumn:DataGridColumn = new DataGridColumn(tmp);
var arr:Array = dg.columns;
dg.headerRenderer = new ClassFactory(Label);
switch(tmp)
{
case "Name":
dgColumn.dataField = 'Name';
dgColumn.width = 150;
dgColumn.itemRenderer = new ClassFactory(Label);
break;
}
arr.push(dgColumn);
dg.columns = arr;
}
您可以调用函数addDataGridParamColumn(这是名称标题)并为循环添加大小写我不确定arraycollection上的数据,也许您可以检查我的代码,我在Datagrid上创建动态表
private function addDataGridParamColumn(tmp:String):void
{
var dgColumn:DataGridColumn = new DataGridColumn(tmp);
var arr:Array = dg.columns;
dg.headerRenderer = new ClassFactory(Label);
switch(tmp)
{
case "Name":
dgColumn.dataField = 'Name';
dgColumn.width = 150;
dgColumn.itemRenderer = new ClassFactory(Label);
break;
}
arr.push(dgColumn);
dg.columns = arr;
}
您可以调用函数addDataGridParamColumn(这是名称标题)并为循环添加大小写为什么标记为c#?看起来您需要将arrayContent.addItem(新数组…)更改为arrayContent.addItem(新对象(…))为什么要将此标记为c#?看起来您需要将arrayContent.addItem(新数组…)更改为arrayContent.addItem(新对象(…))谢谢echo!。我做了一些小调整,最后它对我有效。谢谢echo!。我做了一些小调整,最后它对我有效。