void SaveTreeNode(TreeNode node, List <ColumnHeaderNode> array) { ColumnHeaderNode hcn = new ColumnHeaderNode(); if (node.Tag == null) { hcn.NodeData = node.Text; foreach (TreeNode subNode in node.Nodes) { SaveTreeNode(subNode, hcn.Children); } } else { hcn.NodeData = node.Tag; } array.Add(hcn); }
void GenerateStringForNode(StringBuilder sb, ColumnHeaderNode node, int indent) { for (int i = 0; i <= indent; ++i) { sb.Append(" "); } if (node.IsHeader) { sb.AppendLine(node.NodeData as string); foreach (ColumnHeaderNode childNode in node.Children) { GenerateStringForNode(sb, childNode, indent + 1); } } else if (node.IsColumn) { sb.AppendLine(node.ColumnData.FullDisplayText); } else { sb.AppendLine("*Error*"); } }