您的位置:首页 > 其它

DataGrid添加CheckBox(下拉列表)

2011-11-02 12:02 295 查看
DataGrid中如何添加下拉列表呢?如下是实现的代码:

DataGrid中的列

view plaincopy to
clipboardprint?

<mx:DataGridColumn headerText="状态" dataField="status" editable="true" itemEditor="components.colorStatus" editorDataField="status" labelFunction="myStatusFunction" />

view plaincopy to
clipboardprint?

//操作的回调函数
private function myStatusFunction(item:Object,coloum:DataGridColumn):String{

if(item.status == 1){

return "启用";
}else{
return "禁用";
}
}

//操作的回调函数
private function myStatusFunction(item:Object,coloum:DataGridColumn):String{
if(item.status == 1){
return "启用";
}else{
return "禁用";
}
}


下拉列表中的值对应的下拉列表的集合,colorStatus.mxml

view plaincopy to
clipboardprint?

<s:DropDownList dataProvider="{statusArr}" id="cbx_zkg" width="100%" labelField="label"/>

<fx:Script>

<!--[CDATA[
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.controls.dataGridClasses.DataGridColumn;

public var statusArr:ArrayCollection = new ArrayCollection([{label:"启用", data:"1"},{label:"禁用", data:"0"}]);

private var col:DataGridColumn=null;

override public function set data(value:Object):void

{
if(value != null)
{
col = (value as DataGridColumn);

super.data = value;

}
var statuss:int = data.status;

for(var i:int=0;i<statusArr.length;i++){

if(statusArr[i].data==data.status.toString() ) {

cbx_zkg.selectedIndex=i;

break;
}

}

}
/* public function cbx_change():void{

Alert.show(cbx_zkg.selectedItem.toString());
} */
public function get status() : int
{
if(null!=cbx_zkg&&null!=cbx_zkg.selectedItem)
return cbx_zkg.selectedItem.data;

else
return 0;

}

]]-->

</fx:Script>

<s:DropDownList dataProvider="{statusArr}" id="cbx_zkg" width="100%" labelField="label"/>
<fx:Script>
<!--[CDATA[
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.controls.dataGridClasses.DataGridColumn;
public var statusArr:ArrayCollection = new ArrayCollection([{label:"启用", data:"1"},{label:"禁用", data:"0"}]);
private var col:DataGridColumn=null;

override public function set data(value:Object):void
{
if(value != null)
{
col = (value as DataGridColumn);
super.data = value;
}
var statuss:int = data.status;
for(var i:int=0;i<statusArr.length;i++){
if(statusArr[i].data==data.status.toString() ) {
cbx_zkg.selectedIndex=i;
break;
}

}

}
/* public function cbx_change():void{
Alert.show(cbx_zkg.selectedItem.toString());
} */
public function get status() : int
{
if(null!=cbx_zkg&&null!=cbx_zkg.selectedItem)
return cbx_zkg.selectedItem.data;
else
return 0;

}

]]-->
</fx:Script>

效果如下:

点击时候:



未点击的时候:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: