internal static void ClearPropertyNode(Node node, AdvPropertyGrid propertyGrid) { node.Style = null; PropertyNode propNode = node as PropertyNode; if (propNode != null) { propNode.IsDisposing = true; if (propNode.IsEditing) { propNode.CancelEdit(); propNode.ExitEditorMode(eTreeAction.Code); } propNode.PropertySettings = null; propNode.TargetComponent = null; propNode.PropertyDescriptor = null; propertyGrid.SuperTooltip.SetSuperTooltip(node, null); } if (node.HasChildNodes) { foreach (Node item in node.Nodes) { ClearPropertyNode(item, propertyGrid); } } node.Dispose(); if (propNode != null) propNode.IsDisposing = false; }