示例#1
0
 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;
 }