/// <summary>
        /// Overrided method insert null item to the top of items list
        /// </summary>
        protected override void _InsertNullItem()
        {
            string nullItem = string.Empty;

            if (AvailableCollection.Count == 0 || (AvailableCollection[0] != null && AvailableCollection[0] != nullItem))
            {
                AvailableCollection.Insert(0, nullItem);
            }
        }
        protected override void _BuildAvailableCollection()
        {
            base._BuildAvailableCollection();

            Collection <ESRI.ArcLogistics.Data.DataObject> usedItems = new Collection <ESRI.ArcLogistics.Data.DataObject>();

            if (ItemType != null && ItemType.Equals(typeof(ArcLogistics.DomainObjects.Vehicle)))
            {
                usedItems = RoutesHelper.CreateUsedVehiclesCollection();
            }
            else if (ItemType != null && ItemType.Equals(typeof(ArcLogistics.DomainObjects.Driver)))
            {
                usedItems = RoutesHelper.CreateUsedDriversCollection();
            }

            foreach (ESRI.ArcLogistics.Data.DataObject obj in usedItems)
            {
                if (obj != SelectedItem)
                {
                    AvailableCollection.Remove(obj);
                }
            }
        }