/// <summary> /// Returns true if the nodes can be dragged /// </summary> /// <param name="nodes">Nodes</param> /// <returns></returns> public sealed override bool CanDrag(TreeNodeData[] nodes) => Context.CanDragAndDrop && nodes.Length != 0 && nodes.All(a => a is DocumentTreeNodeData && ((DocumentTreeNodeData)a).TreeNode.Parent == Context.DocumentTreeView.TreeView.Root);
internal static TreeNodeData[] GetNodes(TreeNodeData[] nodes) { if (nodes == null) return null; if (nodes.Length == 0 || !nodes.All(a => a.TreeNode.Parent != null && a.TreeNode.Parent.Parent == null)) return null; return nodes; }