Flex DataGrid 编辑获取数据
发布时间:2020-12-15 03:57:54 所属栏目:百科 来源:网络整理
导读:?xml version= "1.0" ? !-- itemRendererseventsBeginEditEventAccessEditor.mxml -- mx:Application xmlns:mx= "http: //www.adobe.com/2006/mxml" mx:Script ![CDATA[ import mx.events.DataGridEvent; import mx.controls.NumericStepper; import mx.co
<?xml version=
"1.0"?>
<!-- itemRendererseventsBeginEditEventAccessEditor.mxml --> <mx:Application xmlns:mx= "http://www.adobe.com/2006/mxml"> <mx:Script> <![CDATA[ import mx.events.DataGridEvent; import mx.controls.NumericStepper; import mx.collections.ArrayCollection; import mx.controls.listClasses.IDropInListItemRenderer; import mx.controls.TextInput; [Bindable] private var myDP:ArrayCollection = new ArrayCollection([ {Artist:'Pavement',Album:'Slanted and Enchanted',Price:'(11.99)'}, {Artist:'Pavement',Album:'Crooked Rain,Crooked Rain',Price:'(10.99)'},Album:'Wowee Zowee',Price:'(12.99)'},Album:'Brighten the Corners',Album:'Terror Twilight',Price:'(11.99)'} ]); // Handle the itemEditBegin event. private function onEditedBegin(event:DataGridEvent):void { // Get the name of the column being editted. var colName:String = myDataGrid.columns[event.columnIndex].dataField; var temp:String; if(colName=="Price") { // Handle the event here. event.preventDefault(); // Creates an item editor. myDataGrid.createItemEditor(event.columnIndex,event.rowIndex); // All item editors must implement the IDropInListItemRenderer interface // and the listData property. // Initialize the listData property of the editor. IDropInListItemRenderer(myDataGrid.itemEditorInstance).listData = IDropInListItemRenderer(myDataGrid.editedItemRenderer).listData; // Copy the cell value to the NumericStepper control. myDataGrid.itemEditorInstance.data = myDataGrid.editedItemRenderer.data; // Add 20 percent to the current price. temp = TextInput(myDataGrid.itemEditorInstance).text; if (temp.indexOf("(") != -1){ temp = temp.replace("(",""); } if (temp.indexOf(")") != -1){ temp = temp.replace(")",""); } TextInput(myDataGrid.itemEditorInstance).text = temp; } } private function onEditedEnd(event:DataGridEvent):void{ var colName:String = myDataGrid.columns[event.columnIndex].dataField; var curText:String = TextInput(myDataGrid.itemEditorInstance).text; if(colName=="Price") { // Handle the event here. //event.preventDefault(); // Creates an item editor. //myDataGrid.createItemEditor(event.columnIndex,event.rowIndex); // All item editors must implement the IDropInListItemRenderer interface // and the listData property. // Initialize the listData property of the editor. //IDropInListItemRenderer(myDataGrid.itemEditorInstance).listData = //IDropInListItemRenderer(myDataGrid.editedItemRenderer).listData; // Copy the cell value to the NumericStepper control. //myDataGrid.itemEditorInstance.data = myDataGrid.editedItemRenderer.data; // Add 20 percent to the current price. if (curText != ""){ TextInput(myDataGrid.itemEditorInstance).text = "(" + curText + ")"; } } } ]]> </mx:Script> <mx:Style> .testTip { border-color: #ffffdd; color: #ff0000; font-weight: bold; } </mx:Style> <mx:DataGrid id="myDataGrid" dataProvider="{myDP}" editable="true" itemEditBegin="onEditedBegin(event);" itemEditEnd="onEditedEnd(event);" rowHeight="60"> <mx:columns> <mx:DataGridColumn dataField="Artist" /> <mx:DataGridColumn dataField="Album" width="130" /> <mx:DataGridColumn dataField="Price" editorDataField="text"> <mx:itemEditor> <mx:Component> <mx:TextInput/> </mx:Component> </mx:itemEditor> </mx:DataGridColumn> </mx:columns> </mx:DataGrid> </mx:Application> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |