         
         _caretIndex = value;
         
-        itemShowingCaret(caretIndex, true);
+		if (caretIndex != CUSTOM_SELECTED_ITEM)
+        	itemShowingCaret(caretIndex, true);
     }
     
     /**

{
import flash.events.Event;

import spark.components.SkinnableDataContainer;
import spark.components.IItemRendererOwner; 
import spark.components.IItemRenderer; 
import spark.events.IndexChangeEvent;
import spark.events.RendererExistenceEvent;
import spark.layouts.supportClasses.LayoutBase;
import spark.utils.LabelUtil; 

import mx.collections.IList;
import mx.core.IVisualElement;
import mx.core.mx_internal;
import mx.core.UIComponent; 
import mx.events.FlexEvent; 
import mx.events.CollectionEvent;
import mx.events.CollectionEventKind;

use namespace mx_internal;  //ListBase and List share selection properties that are mx_internal


    {
        super();
    }
    
    mx_internal var allowCustomSelectedItem:Boolean = true;
    mx_internal static var CUSTOM_SELECTED_ITEM:int = -3;
    
    //--------------------------------------------------------------------------
    //
