/// <summary>
        /// Toggle the selection state of the item under the mouse when the mouse is clicked
        /// </summary>
        /// <param name="e"></param>
        protected override void OnMouseClick(MouseEventArgs e)
        {
            //find the item that was clicked, if any
            IListItem item = ItemAt(e.Location);

            if (item == null)
            {
                return;
            }

            item.HandleMouseClick(e);
        }