<mx:DataGridColumn headerText="任课教师" dataField="teachername">
<mx:itemRenderer>
<mx:Component>
<mx:HBox>
<mx:Script>
<![CDATA[
import dto.User;
public function get value():Object
{
if(cmb.selectedItem == null)return null;
var teacherDTO :User = cmb.selectedItem as User;
var teachername:String=teacherDTO.username;
data.teachername=teachername;
return teacherDTO;
}
override public function set data(value:Object):void
{
//必须要给data复制,否则会导致程序崩溃
super.data=value;
//给combobox赋初始值
for each(var teacherDTO :User in cmb.dataProvider)
{
var teacher: String =teacherDTO.username;
if(teacher == value.teachername){ //value DataGrid上面的当前行的数据
cmb.selectedItem=teacherDTO;
}
}
}
]]>
</mx:Script>
<mx:ComboBox id="cmb" labelField="username" dataProvider="{outerDocument.teacherArray}" close="change()" width="100%">
<mx:Script>
<![CDATA[
protected function change():void{
data.teachername=cmb.selectedItem.username;
}
]]>
</mx:Script>
</mx:ComboBox>
</mx:HBox>
</mx:Component>
</mx:itemRenderer>
</mx:DataGridColumn>
datagrid 套combobox
最新推荐文章于 2024-05-01 22:27:44 发布