public override bool CanDropNode(object dataObject, DragOperation operation, DropPosition pos)
        {
            object parent1 = CurrentNode.GetParentDataItem(typeof(Extension), false);

            if (parent1 == null)
            {
                parent1 = CurrentNode.GetParentDataItem(typeof(ExtensionPoint), false);
            }

            ITreeNavigator nav = CurrentNode.Clone();

            if (!nav.MoveToObject(dataObject))
            {
                return(false);
            }
            object parent2 = nav.GetParentDataItem(parent1.GetType(), false);

            if (parent2 != parent1)
            {
                return(false);
            }

            return(true);
        }