1
测试 xml
2![](/Images/OutliningIndicators/None.gif)
3
<?
xml version="1.0" encoding="utf-8"
?>
4
<
addressbook
>
5
<
contacts
id
="Contacts"
>
6
<
contact
id
="Alex"
>
7
<
email
id
="popmail"
>
8
someone@some_pop_mail.net
9
</
email
>
10
<
city
>
Edinburgh
</
city
>
11
<
country
>
United Kingdom
</
country
>
12
</
contact
>
13
<
contact
id
="Rebekah"
>
14
<
email
id
="webmail"
>
15
someone@some_web_mail.net
16
</
email
>
17
<
city
>
Papakura
</
city
>
18
<
country
>
New Zealand
</
country
>
19
</
contact
>
20
<
contact
id
="Justin"
>
21
<
email
id
="webmail"
>
22
someone_else@some_web_mail.com
23
</
email
>
24
<
city
>
Muriwai
</
city
>
25
<
country
>
New Zealand
</
country
>
26
</
contact
>
27
</
contacts
>
28
</
addressbook
>
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
3
![](/Images/OutliningIndicators/None.gif)
4
![](/Images/OutliningIndicators/None.gif)
5
![](/Images/OutliningIndicators/None.gif)
6
![](/Images/OutliningIndicators/None.gif)
7
![](/Images/OutliningIndicators/None.gif)
8
![](/Images/OutliningIndicators/None.gif)
9
![](/Images/OutliningIndicators/None.gif)
10
![](/Images/OutliningIndicators/None.gif)
11
![](/Images/OutliningIndicators/None.gif)
12
![](/Images/OutliningIndicators/None.gif)
13
![](/Images/OutliningIndicators/None.gif)
14
![](/Images/OutliningIndicators/None.gif)
15
![](/Images/OutliningIndicators/None.gif)
16
![](/Images/OutliningIndicators/None.gif)
17
![](/Images/OutliningIndicators/None.gif)
18
![](/Images/OutliningIndicators/None.gif)
19
![](/Images/OutliningIndicators/None.gif)
20
![](/Images/OutliningIndicators/None.gif)
21
![](/Images/OutliningIndicators/None.gif)
22
![](/Images/OutliningIndicators/None.gif)
23
![](/Images/OutliningIndicators/None.gif)
24
![](/Images/OutliningIndicators/None.gif)
25
![](/Images/OutliningIndicators/None.gif)
26
![](/Images/OutliningIndicators/None.gif)
27
![](/Images/OutliningIndicators/None.gif)
28
![](/Images/OutliningIndicators/None.gif)
1
窗体类代码:
2![](/Images/OutliningIndicators/None.gif)
3
using
System;
4
using
System.Collections.Generic;
5
using
System.ComponentModel;
6
using
System.Data;
7
using
System.Drawing;
8
using
System.Text;
9
using
System.Windows.Forms;
10![](/Images/OutliningIndicators/None.gif)
11
namespace
TreeView
12![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
{
13
public partial class Form1 : Form
14![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
15
public Form1()
16![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
17
InitializeComponent();
18
}
19![](/Images/OutliningIndicators/InBlock.gif)
20
private void Form1_Load(object sender, EventArgs e)
21![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
22
System.Xml.XmlDocument document =
23
new System.Xml.XmlDataDocument();
24
document.Load(@"C:\test\C#\TreeView\TreeView\TreeView\contacts.xml");
25![](/Images/OutliningIndicators/InBlock.gif)
26
populateTreeControl(document.DocumentElement,
27
this.tvPerson.Nodes);
28
}
29![](/Images/OutliningIndicators/InBlock.gif)
30
private void populateTreeControl(
31
System.Xml.XmlNode document,
32
System.Windows.Forms.TreeNodeCollection nodes)
33![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
34
foreach (System.Xml.XmlNode node in
35
document.ChildNodes)
36![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
{
37
// If the element has a value, display it;
38
// otherwise display the first attribute
39
// (if there is one) or the element name
40
// (if there isn't)
41![](/Images/OutliningIndicators/InBlock.gif)
42
string text = (node.Value != null ? node.Value :
43
(node.Attributes != null &&
44
node.Attributes.Count > 0) ?
45
node.Attributes[0].Value : node.Name);
46
TreeNode new_child = new TreeNode(text);
47![](/Images/OutliningIndicators/InBlock.gif)
48
nodes.Add(new_child);
49
populateTreeControl(node, new_child.Nodes);
50
}
51
}
52
}
53
}
![](/Images/OutliningIndicators/None.gif)
2
![](/Images/OutliningIndicators/None.gif)
3
![](/Images/OutliningIndicators/None.gif)
4
![](/Images/OutliningIndicators/None.gif)
5
![](/Images/OutliningIndicators/None.gif)
6
![](/Images/OutliningIndicators/None.gif)
7
![](/Images/OutliningIndicators/None.gif)
8
![](/Images/OutliningIndicators/None.gif)
9
![](/Images/OutliningIndicators/None.gif)
10
![](/Images/OutliningIndicators/None.gif)
11
![](/Images/OutliningIndicators/None.gif)
12
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/ContractedBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
13
![](/Images/OutliningIndicators/InBlock.gif)
14
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
15
![](/Images/OutliningIndicators/InBlock.gif)
16
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
17
![](/Images/OutliningIndicators/InBlock.gif)
18
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
19
![](/Images/OutliningIndicators/InBlock.gif)
20
![](/Images/OutliningIndicators/InBlock.gif)
21
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
22
![](/Images/OutliningIndicators/InBlock.gif)
23
![](/Images/OutliningIndicators/InBlock.gif)
24
![](/Images/OutliningIndicators/InBlock.gif)
25
![](/Images/OutliningIndicators/InBlock.gif)
26
![](/Images/OutliningIndicators/InBlock.gif)
27
![](/Images/OutliningIndicators/InBlock.gif)
28
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
29
![](/Images/OutliningIndicators/InBlock.gif)
30
![](/Images/OutliningIndicators/InBlock.gif)
31
![](/Images/OutliningIndicators/InBlock.gif)
32
![](/Images/OutliningIndicators/InBlock.gif)
33
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
34
![](/Images/OutliningIndicators/InBlock.gif)
35
![](/Images/OutliningIndicators/InBlock.gif)
36
![](/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
![](/Images/OutliningIndicators/ContractedSubBlock.gif)
![](https://www.cnblogs.com/Images/dot.gif)
37
![](/Images/OutliningIndicators/InBlock.gif)
38
![](/Images/OutliningIndicators/InBlock.gif)
39
![](/Images/OutliningIndicators/InBlock.gif)
40
![](/Images/OutliningIndicators/InBlock.gif)
41
![](/Images/OutliningIndicators/InBlock.gif)
42
![](/Images/OutliningIndicators/InBlock.gif)
43
![](/Images/OutliningIndicators/InBlock.gif)
44
![](/Images/OutliningIndicators/InBlock.gif)
45
![](/Images/OutliningIndicators/InBlock.gif)
46
![](/Images/OutliningIndicators/InBlock.gif)
47
![](/Images/OutliningIndicators/InBlock.gif)
48
![](/Images/OutliningIndicators/InBlock.gif)
49
![](/Images/OutliningIndicators/InBlock.gif)
50
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
51
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
52
![](/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
53
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)