現在、Webリクエストから私に返されたxmlからツリービューを取り込もうとしています。レスポンスはXMLは、このレイアウトであるように、私は、データを操作していますに来るとき:XMLからツリービューを取り込む
<GroupList>
<Group>
<GroupName>my first test group</GroupName>
<GroupID>djnsldgnljsdngljsdngljns</GroupID>
<AccessLevel>high</AccessLevel>
<SubGroup>
<SubGroupName>my first test subgroup</SubGroupName>
<SubGroupID>djnsldgnljsdngljsdngljns</SubGroupID>
</SubGroup>
</Group>
<Group>
<GroupName>my second test group</GroupName>
<GroupID>djnsldgnljsdngljsdngl</GroupID>
<AccessLevel>high</AccessLevel>
<SubGroup>
<SubGroupName>my second test subgroup</SubGroupName>
<SubGroupID>DBXRdjnsldgnljsdngljsdngl</SubGroupID>
</SubGroup>
<SubGroup>
<SubGroupName>my second test subgroup1</SubGroupName>
<SubGroupID>EJdjnsldgnljsdngljsdngl42</SubGroupID>
</SubGroup>
</Group>
</GroupList>
私がやりたいすべてのグループ名を表示し、あなたがサブグループを展開して表示することができますです。現在のところ、私はそれを "一種"の作業としていますが、そのすべてを一直線上に表示します。ここに私のコードで私は現在持っている:
xmlDoc.LoadXml(response2);
groupsTreeView.Nodes.Clear();
groupsTreeView.Nodes.Add(new
TreeNode(xmlDoc.DocumentElement.InnerText));
TreeNode tNode = new TreeNode();
tNode = (TreeNode)groupsTreeView.Nodes[0];
addTreeNode(xmlDoc.DocumentElement, tNode);
groupsTreeView.ExpandAll();
//This function is called recursively until all nodes are loaded
private void addTreeNode(XmlNode xmlNode, TreeNode treeNode)
{
XmlNode xNode;
TreeNode tNode;
XmlNodeList xNodeList;
if (xmlNode.HasChildNodes) //The current node has children
{
xNodeList = xmlNode.ChildNodes;
for (int x = 0; x <= xNodeList.Count - 1; x++)
//Loop through the child nodes
{
xNode = xmlNode.ChildNodes[x];
groupsTreeView.Nodes.Add(new TreeNode(xNode.Value));
tNode = groupsTreeView.Nodes[x];
addTreeNode(xNode, tNode);
}
}
else //No children, so add the outer xml (trimming off whitespace)
treeNode.Text = xmlNode.OuterXml.Trim();
}
この画像は上記のコードは、ローカルに私のシステム上で閲覧するときのようになります。
任意の提案、イムかなり失われ、それはやっている私頭の中に!
これは私のaddTreeNodeメソッドではなく、上記のコードをすべて置き換えることですか? – Sad
これがあなたのコードを置き換えます。 –
乾杯。私はXElement.Parseやnode.Nodes.Addの代わりにnode.ChildNodes.Addという小さな変更をいくつか行います。答えはありがたいですが、私に大きな助けになりました。ビッグ+1あなたのため: – Sad