/// <summary> /// Enumerate through layoutEnumerator's layout entity collection front-to-back, in a DFS manner, and in a "Logical" order. /// </summary> private static void TraverseLayoutForwardLogical(LayoutEnumerator layoutEnumerator, int depth) { do { PrintCurrentEntity(layoutEnumerator, depth); if (layoutEnumerator.MoveFirstChild()) { TraverseLayoutForwardLogical(layoutEnumerator, depth + 1); layoutEnumerator.MoveParent(); } } while (layoutEnumerator.MoveNextLogical()); }
/// <summary> /// Enumerates forward through each layout element in the document and prints out details of each element. /// </summary> private static void DisplayLayoutElements(LayoutEnumerator it, string padding) { do { DisplayEntityInfo(it, padding); if (it.MoveFirstChild()) { // Recurse into this child element. DisplayLayoutElements(it, AddPadding(padding)); it.MoveParent(); } } while (it.MoveNext()); }
/// <summary> /// Enumerates forward through each layout element in the document and prints out details of each element. /// </summary> private static void DisplayLayoutElements(LayoutEnumerator layoutEnumerator, string padding) { do { DisplayEntityInfo(layoutEnumerator, padding); if (layoutEnumerator.MoveFirstChild()) { // Recurse into this child element. DisplayLayoutElements(layoutEnumerator, AddPadding(padding)); layoutEnumerator.MoveParent(); } } while (layoutEnumerator.MoveNext()); }