         var prevValue:Number = value;
         
         if (valueParseFunction != null)
+        {
             inputValue = valueParseFunction(textDisplay.text);
+        }
         else 
-            inputValue = Number(textDisplay.text);
+        {
+            if (dataFormatter == null)
+                dataFormatter = new NumberFormatter(LocaleID.DEFAULT);
+
+            inputValue = dataFormatter.parseNumber(textDisplay.text);
+        }
         
         if ((textDisplay.text && textDisplay.text.length != value.toString().length)
             || textDisplay.text == "" || (inputValue != value && 

import flash.events.Event;
import flash.events.FocusEvent;
import flash.events.KeyboardEvent;

import mx.core.mx_internal;
import mx.core.IIMESupport;
import mx.events.FlexEvent;
import mx.managers.IFocusManagerComponent;



    //--------------------------------------------------------------------------
    //
    //  Variables
    //
    //--------------------------------------------------------------------------

    /**
     *  @private
     */
    private var dataFormatter:NumberFormatter;
    
    //--------------------------------------------------------------------------
    //
    //  Overridden properties: UIComponent
    //
    //--------------------------------------------------------------------------
