End Edit Event Formatter : Formatter « Data Model « Flex

Home
Flex
1.Chart
2.Components
3.Container
4.Data Model
5.Development
6.Effects
7.Event
8.Graphics
9.Grid
10.Style
Flex » Data Model » FormatterScreenshots 
End Edit Event Formatter
End Edit Event Formatter
    
<!--
Code from Flex Documentation "Using Adobe Flex 4".

This user guide is licensed for use under the terms of the Creative Commons Attribution 
Non-Commercial 3.0 License. 

This License allows users to copy, distribute, and transmit the user guide for noncommercial 
purposes only so long as 
  (1proper attribution to Adobe is given as the owner of the user guide; and 
  (2any reuse or distribution of the user guide contains a notice that use of the user guide is governed by these terms. 
The best way to provide notice is to include the following link. 
To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/

-->



    <!-- itemRenderers\events\EndEditEventFormatter.mxml -->
<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">
    <fx:Script> 
         
        import mx.controls.TextInput; 
        import mx.events.DataGridEvent; 
        import mx.events.DataGridEventReason; 
        import mx.formatters.NumberFormatter; 
        import mx.collections.ArrayCollection; 
        [Bindable
        private var initDG:ArrayCollection = new ArrayCollection([ 
        {Artist:'Pavement', Album:'Slanted and Enchanted',Price:11.99}
        {Artist:'Pavement', Album:'Brighten the Corners', Price:11.99 
        ])
        // Define the number formatter. 
        private var myFormatter:NumberFormatter=new NumberFormatter()
        // Define the eventlistner for the itemEditEnd event. 
        public function formatData(event:DataGridEvent):void 
            // Check the reason for the event. 
            if (event.reason == DataGridEventReason.CANCELLED){ 
                // Do not update cell. 
                return
            
            // Get the new data value from the editor. 
            var newData:String= TextInput(event.currentTarget.itemEditorInstance).text; 
            // Determine if the new value is an empty String. 
            if(newData == "") { 
                // Prevent the user from removing focus, 
                // and leave the cell editor open. 
                event.preventDefault()
                // Write a message to the errorString property. 
                // This message appears when the user 
                // mouses over the editor. 
                TextInput(myGrid.itemEditorInstance).errorString="Enter a valid string."
                return
            
            // For the Price column, return a value 
            // with a precision of 2. 
            if(event.dataField == "Price") { 
                myFormatter.precision=2
                TextInput(myGrid.itemEditorInstance).text=myFormatter.format(newData)
            
        
      
    </fx:Script>
    <mx:DataGrid id="myGrid" dataProvider="{initDG}" editable="true"
        itemEditEnd="formatData(event);">
        <mx:columns>
            <mx:DataGridColumn dataField="Artist" />
            <mx:DataGridColumn dataField="Album" />
            <mx:DataGridColumn dataField="Price" />
        </mx:columns>
    </mx:DataGrid>
</s:Application>

   
    
    
    
  
Related examples in the same category
1.Formatter ErrorFormatter Error
2.Data Formatting Using MXML FormattersData Formatting Using MXML Formatters
3.Formatting data with the formatter classesFormatting data with the formatter classes
4.Edit Event FormatterEdit Event Formatter
5.Set up the formatters.
w___w_w.j_a___v_a___2_s_.__c___o__m_ | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.