微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Flex DataGrid 编辑获取数据

<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"                xmlns:s="library://ns.adobe.com/flex/spark"                xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">     <fx:Declarations>         <!-- 将非可视元素(例如服务、值对象)放在此处 -->     </fx:Declarations>     <fx: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 + ")";         }                  }         }         ]]>     </fx:Script>          <fx:Style>         .testTip         {         border-color: #ffffdd;         color: #ff0000;         font-weight: bold;         }     </fx: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>                     <fx:Component>                         <mx:TextInput/>                     </fx:Component>                 </mx:itemEditor>             </mx:DataGridColumn>         </mx:columns>     </mx:DataGrid> </s:Application>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐