Muh*_*mar 0 apache-flex actionscript-3 flash-builder flex4
伙计我dataColumn已经定义为
<mx:DataGridColumn headerText="Role" id="roleAdmin" headerStyleName="myHeaderStyles">
<mx:itemRenderer>
<fx:Component>
<mx:VBox>
<mx:Text width="100%" text="{(data.role == 0)? 'Super Admin':((data.role == 1)? 'Admin': ((data.role == 2)? 'Regular User': 'Unknown'))}"/>
</mx:VBox>
</fx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
Run Code Online (Sandbox Code Playgroud)
我想要做的就是根据我放置的条件动态创建这些数据.任何人都可以帮助我完成我应该做的代码以及如何添加所有这些东西.
最好的祝福
试试这个.您将获得逻辑如何使用项呈示器处理动态列.
var cols:Array=new Array();
cols = dgDatagrid.columns;
var column:DataGridColumn = new DataGridColumn();
column.headerText = "Role";
column.width=170;
column.dataField="role";
column.setStyle('headerStyleName',myHeaderStyles);
column.itemRenderer = new ClassFactory(MyRenderer);
cols.push(column);
dgDatagrid.columns=cols;
Run Code Online (Sandbox Code Playgroud)
MyRenderer:
<?xml version="1.0" encoding="utf-8"?>
<s:MXDataGridItemRenderer xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
>
<s:layout>
<s:HorizontalLayout paddingLeft="10" paddingRight="10" />
</s:layout>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.controls.DataGrid;
import mx.controls.dataGridClasses.DataGridListData;
import mx.events.FlexEvent;
import spark.events.TextOperationEvent;
private var dg:DataGrid;
private var dglistData:DataGridListData;
override public function set data( value:Object ) : void
{
super.data = value;
if(value){
dglistData = listData as DataGridListData;
if(value[dglistData.dataField]){
txtText.text=((value[dglistData.dataField]) == 0)? 'Super Admin':(((value[dglistData.dataField]) == 1)? 'Admin': (((value[dglistData.dataField]) == 2)? 'Regular User': 'Unknown'))
}
}
}
]]>
</fx:Script>
<mx:VBox>
<mx:Text width="100%" id="txtText"/>
</mx:VBox>
</s:MXDataGridItemRenderer>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2660 次 |
| 最近记录: |