GoDigram for .NET Framework and .NET Core
Northwoods.Go.Xml Namespace / GoXmlBindingTransformer Class / TreeStructured Property
In This Topic
    TreeStructured Property
    In This Topic
    Gets or sets whether nested XML elements are treated as logical child nodes connected by links, rather than being structural parts of nodes like subgraphs.
    Syntax
    public bool TreeStructured {get; set;}

    Property Value

    The default is false. This may be set to true for those transformers that represent nodes.
    Remarks

    When this property is true, the XML will typically look like: <node id="0" label="Root" loc="71 190"> <node id="1" label="A1" loc="182 74" /> <node id="2" label="A2" loc="186 276"> <node id="3" label="B1" loc="272 236"> <node id="4" label="C1" loc="346 292"> <node id="5" label="D1" loc="445 259" /> <node id="6" label="D2" loc="448 348" /> </node> </node> <node id="7" label="B2" loc="287 358" /> </node> </node>

    When this property is true, it does not make sense to have an attribute/property binding using the special property named "TreeParentNode". The "parent" of any node is implicit in the XML structure, so no node reference is necessary.

    Setting this to true also automatically sets BodyConsumesChildElements to true.

    Caution: when generating XML, be sure that the collection that you assign to the GoXmlWriter.Objects property only contains the root nodes of the trees. If the collection contains a child node as well as the root node, the XML element with nested elements will be generated in duplicate for that child node as well as for the whole tree starting at the root node.

    See Also