flex datagrid渲染使用
来源:互联网 发布:搜淘宝网 编辑:程序博客网 时间:2024/05/21 09:15
Artist类:package{public class Artist{public function Artist(){}public var Album:String;public var Price:Number;}}
dataGridTest<?xml version="1.0"?><!-- dpcontrols/DataGridPassData.mxml --><mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" initialize="initData()"> <mx:Script> <![CDATA[ import mx.events.CloseEvent; import mx.collections.*; import mx.controls.Alert; import mx.managers.PopUpManager; private var DGArray:Array = [ {Artist:'Pavement', Album:'Slanted and Enchanted', Price:11.99}, {Artist:'Pavement', Album:'Brighten the Corners', Price:11.99}]; [Bindable] public var initDG:ArrayCollection; public function initData():void { initDG=new ArrayCollection(DGArray); } public function del(obj:Object):void { Alert.show("确定要删除吗?","",3,this,alertClickHandler); } public function alertClickHandler(event:CloseEvent):void { if(event.detail==Alert.YES) { Alert.show("删除成功!"); } } public function updateData(obj:Object):void { var a:Artist = new Artist(); a.Album = obj.Artist; a.Price = obj.Price; var pop:update = update(PopUpManager.createPopUp(this,update,true)); pop.a = a; } ]]> </mx:Script> <mx:DataGrid id="myGrid" width="350" height="200" dataProvider="{initDG}" > <mx:columns> <mx:DataGridColumn dataField="Album" /> <mx:DataGridColumn dataField="Price" /> <mx:DataGridColumn headerText="操作" width="100"><mx:itemRenderer><mx:Component><mx:HBox width="100%" horizontalAlign="center" verticalAlign="middle"><mx:Label buttonMode="true" useHandCursor="true" mouseChildren="false" text="删除" click="outerDocument.del(data)"/><mx:Label buttonMode="true" useHandCursor="true" mouseChildren="false" text="更新" click="outerDocument.updateData(data)"/></mx:HBox></mx:Component></mx:itemRenderer></mx:DataGridColumn> </mx:columns> </mx:DataGrid></mx:Application>
<?xml version="1.0" encoding="utf-8"?><mx:TitleWindow xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="400" height="300"><mx:Script><![CDATA[[Bindable]public var a:Artist = new Artist();public function updateArtis(): void {album.text = "update "+a.Album;price.text = "update "+a.Price;}]]></mx:Script><mx:TextInput id="album" text="{a.Album}" x="49" y="19"/><mx:TextInput id="price" text="{a.Price}" x="49" y="63"/><mx:Button click="updateArtis()" label="修改" x="89" y="135"/></mx:TitleWindow>