protected override void RemoveItem(int index)
        {
            object ob = this [index];

            base.RemoveItem(index);
            if (listener != null)
            {
                listener.ItemRemoved(this, ob);
            }
        }
        protected override void RemoveItem(int index)
        {
            T ob = Items [index];

            base.RemoveItem(index);
            if (listener != null)
            {
                listener.ItemRemoved(this, ob);
            }
            if (changeHandler != null)
            {
                changeHandler(ob, false);
            }
        }