     override mx_internal function changeHighlightedSelection(newIndex:int, scrollToTop:Boolean = false):void
     {
         super.changeHighlightedSelection(newIndex, scrollToTop);
-                
-        var item:Object = dataProvider ? dataProvider.getItemAt(newIndex) : undefined;
-        if (item)
-        {
-            var itemString:String = itemToLabel(item);
-            textInput.selectAll();
-            textInput.insertText(itemString);
-            textInput.selectAll();
-         
-            userTypedIntoText = false;
-        }
+        
+        if (newIndex > 0)
+        {
+            var item:Object = dataProvider ? dataProvider.getItemAt(newIndex) : undefined;
+            if (item)
+            {
+                var itemString:String = itemToLabel(item);
+                textInput.selectAll();
+                textInput.insertText(itemString);
+                textInput.selectAll();
+             
+                userTypedIntoText = false;
+            }
+        }
+    }
+    
+    override protected function findKey(eventCode:int):Boolean
+    {
+        return false;
     }
     
     // If the TextInput is in focus, listen for keyDown events in the capture phase so that 

    //  Properties
    //
    //--------------------------------------------------------------------------
        
    //--------------------------------------------------------------------------
    //  itemMatchingFunction
    //--------------------------------------------------------------------------

    //  Overridden Properties
    //
    //--------------------------------------------------------------------------
    
    /**
     *  @private 
     */
    override public function set selectedIndex(value:int):void
    {
        super.selectedIndex = value;
        actualProposedSelectedIndex = value;
    }
    
    /**
     *  @private 
