/// <summary>
        /// Updates the drag drop allowed properties.
        /// </summary>
        protected virtual void UpdateIsDragDropPossible()
        {
            CanonicSelection CanonicSelectedItemList = new CanonicSelection(CreateItemList());

            if (GetCanonicSelectedItemList(CanonicSelectedItemList))
            {
                DragSource.SetIsDragPossible(CanonicSelectedItemList);
            }
            else
            {
                DragSource.ClearIsDragPossible();
                DragSource.ClearFlatDraggedItemList();
            }
        }