TreeNode.ChildNodes Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets a TreeNodeCollection collection that contains the first-level child nodes of the current node.
public:
property System::Web::UI::WebControls::TreeNodeCollection ^ ChildNodes { System::Web::UI::WebControls::TreeNodeCollection ^ get(); };
[System.ComponentModel.Browsable(false)]
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerDefaultProperty)]
public System.Web.UI.WebControls.TreeNodeCollection ChildNodes { get; }
[<System.ComponentModel.Browsable(false)>]
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerDefaultProperty)>]
member this.ChildNodes : System.Web.UI.WebControls.TreeNodeCollection
Public ReadOnly Property ChildNodes As TreeNodeCollection
Property Value
A TreeNodeCollection that contains the first-level child nodes of the current node.
- Attributes
Examples
The following code example demonstrates how to use the ChildNodes property to traverse the tree.
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Load(Object sender, EventArgs e)
{
// If the TreeView control contains any root nodes, perform a
// preorder traversal of the tree and display the text of each node.
if(LinksTreeView.Nodes.Count > 0)
{
// Iterate through the root nodes in the Nodes property.
for(int i=0; i<LinksTreeView.Nodes.Count; i++)
{
// Display the nodes.
DisplayChildNodeText(LinksTreeView.Nodes[i]);
}
}
else
{
Message.Text = "The TreeView control does not have any nodes.";
}
}
void DisplayChildNodeText(TreeNode node)
{
// Display the node's text value.
Message.Text += node.Text + "<br />";
// Iterate through the child nodes of the parent node passed into
// this method and display their values.
for(int i=0; i<node.ChildNodes.Count; i++)
{
// Recursively call the DisplayChildNodeText method to
// traverse the tree and display all the child nodes.
DisplayChildNodeText(node.ChildNodes[i]);
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeNodeCollection Count Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeNodeCollection Count Example</h3>
<asp:TreeView id="LinksTreeView"
Font-Names= "Arial"
ForeColor="Blue"
runat="server">
<LevelStyles>
<asp:TreeNodeStyle ChildNodesPadding="10"
Font-Bold="true"
Font-Size="12pt"
ForeColor="DarkGreen"/>
<asp:TreeNodeStyle ChildNodesPadding="5"
Font-Bold="true"
Font-Size="10pt"/>
<asp:TreeNodeStyle ChildNodesPadding="5"
Font-UnderLine="true"
Font-Size="10pt"/>
<asp:TreeNodeStyle ChildNodesPadding="10"
Font-Size="8pt"/>
</LevelStyles>
<Nodes>
<asp:TreeNode Text="Table of Contents"
Expanded="true">
<asp:TreeNode Text="Chapter One">
<asp:TreeNode Text="Section 1.0">
<asp:TreeNode Text="Topic 1.0.1"/>
<asp:TreeNode Text="Topic 1.0.2"/>
<asp:TreeNode Text="Topic 1.0.3"/>
</asp:TreeNode>
<asp:TreeNode Text="Section 1.1">
<asp:TreeNode Text="Topic 1.1.1"/>
<asp:TreeNode Text="Topic 1.1.2"/>
<asp:TreeNode Text="Topic 1.1.3"/>
<asp:TreeNode Text="Topic 1.1.4"/>
</asp:TreeNode>
</asp:TreeNode>
<asp:TreeNode Text="Chapter Two">
<asp:TreeNode Text="Section 2.0">
<asp:TreeNode Text="Topic 2.0.1">
<asp:TreeNode Text="Subtopic 1"/>
<asp:TreeNode Text="Subtopic 2"/>
</asp:TreeNode>
<asp:TreeNode Text="Topic 2.0.2"/>
</asp:TreeNode>
</asp:TreeNode>
</asp:TreeNode>
<asp:TreeNode Text="Appendix A" />
<asp:TreeNode Text="Appendix B" />
<asp:TreeNode Text="Appendix C" />
</Nodes>
</asp:TreeView>
<br /><br />
<asp:Label id="Message"
runat="server"/>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
' If the TreeView control contains any root nodes, perform a
' preorder traversal of the tree and display the text of each node.
If LinksTreeView.Nodes.Count > 0 Then
' Iterate through the root nodes in the Nodes property.
Dim i As Integer
For i = 0 To LinksTreeView.Nodes.Count - 1
' Display the nodes.
DisplayChildNodeText(LinksTreeView.Nodes(i))
Next i
Else
Message.Text = "The TreeView control does not have any nodes."
End If
End Sub
Sub DisplayChildNodeText(ByVal node As TreeNode)
' Display the node's text value.
Message.Text &= node.Text & "<br />"
' Iterate through the child nodes of the parent node passed into
' this method and display their values.
Dim i As Integer
For i = 0 To node.ChildNodes.Count - 1
' Recursively call the DisplayChildNodeText method to
' traverse the tree and display all the child nodes.
DisplayChildNodeText(node.ChildNodes(i))
Next i
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeNodeCollection Count Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeNodeCollection Count Example</h3>
<asp:TreeView id="LinksTreeView"
Font-Names= "Arial"
ForeColor="Blue"
runat="server">
<LevelStyles>
<asp:TreeNodeStyle ChildNodesPadding="10"
Font-Bold="true"
Font-Size="12pt"
ForeColor="DarkGreen"/>
<asp:TreeNodeStyle ChildNodesPadding="5"
Font-Bold="true"
Font-Size="10pt"/>
<asp:TreeNodeStyle ChildNodesPadding="5"
Font-UnderLine="true"
Font-Size="10pt"/>
<asp:TreeNodeStyle ChildNodesPadding="10"
Font-Size="8pt"/>
</LevelStyles>
<Nodes>
<asp:TreeNode Text="Table of Contents"
Expanded="true">
<asp:TreeNode Text="Chapter One">
<asp:TreeNode Text="Section 1.0">
<asp:TreeNode Text="Topic 1.0.1"/>
<asp:TreeNode Text="Topic 1.0.2"/>
<asp:TreeNode Text="Topic 1.0.3"/>
</asp:TreeNode>
<asp:TreeNode Text="Section 1.1">
<asp:TreeNode Text="Topic 1.1.1"/>
<asp:TreeNode Text="Topic 1.1.2"/>
<asp:TreeNode Text="Topic 1.1.3"/>
<asp:TreeNode Text="Topic 1.1.4"/>
</asp:TreeNode>
</asp:TreeNode>
<asp:TreeNode Text="Chapter Two">
<asp:TreeNode Text="Section 2.0">
<asp:TreeNode Text="Topic 2.0.1">
<asp:TreeNode Text="Subtopic 1"/>
<asp:TreeNode Text="Subtopic 2"/>
</asp:TreeNode>
<asp:TreeNode Text="Topic 2.0.2"/>
</asp:TreeNode>
</asp:TreeNode>
</asp:TreeNode>
<asp:TreeNode Text="Appendix A" />
<asp:TreeNode Text="Appendix B" />
<asp:TreeNode Text="Appendix C" />
</Nodes>
</asp:TreeView>
<br /><br />
<asp:Label id="Message"
runat="server"/>
</form>
</body>
</html>
Remarks
Use the ChildNodes property to get a TreeNodeCollection collection that contains the first-level child nodes of the current node. This collection is commonly used to iterate through all the first-level child nodes, or to access a specific first-level child node of the current node.
The ChildNodes property can also be used to programmatically manage the first-level child nodes in the current node. You can add, insert, remove, and retrieve TreeNode objects from the collection. Any updates to the collection will automatically be reflected in the TreeView control the next time the page is refreshed.
To access child nodes further down the tree, use the ChildNodes property of the next-level child node to navigate down the node levels.