TreeNodeCollection.IndexOf(TreeNode) Method
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.
Determines the index of the specified TreeNode object.
public:
int IndexOf(System::Web::UI::WebControls::TreeNode ^ value);
public int IndexOf (System.Web.UI.WebControls.TreeNode value);
member this.IndexOf : System.Web.UI.WebControls.TreeNode -> int
Public Function IndexOf (value As TreeNode) As Integer
Parameters
Returns
The zero-based index of the first occurrence of value
within the TreeNodeCollection, if found; otherwise, -1.
Examples
The following example demonstrates how to use the IndexOf method to determine the index of a root node. Notice that the Nodes property returns a TreeNodeCollection object.
<%@ 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 Node_Changed(Object sender, EventArgs e)
{
// Determine whether the Nodes collection contains the selected node
// and display the appropriate message.
if(LinksTreeView.Nodes.Contains(LinksTreeView.SelectedNode))
{
Message.Text = "The index of " + LinksTreeView.SelectedNode.Text +
" is " + LinksTreeView.Nodes.IndexOf(LinksTreeView.SelectedNode).ToString();
}
else
{
Message.Text = "The selected node is not a root node.";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeNodeCollection Contains Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeNodeCollection Contains Example</h3>
<h5>Click a root node.</h5>
<asp:TreeView id="LinksTreeView"
Font-Names= "Arial"
ForeColor="Blue"
OnSelectedNodeChanged="Node_Changed"
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>
<hr />
<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 Node_Changed(ByVal sender As Object, ByVal e As EventArgs)
' Determine whether the Nodes collection contains the selected node
' and display the appropriate message.
If LinksTreeView.Nodes.Contains(LinksTreeView.SelectedNode) Then
Message.Text = "The index of " & LinksTreeView.SelectedNode.Text & _
" is " & LinksTreeView.Nodes.IndexOf(LinksTreeView.SelectedNode).ToString()
Else
Message.Text = "The selected node is not a root node."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>TreeNodeCollection Contains Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>TreeNodeCollection Contains Example</h3>
<h5>Click a root node.</h5>
<asp:TreeView id="LinksTreeView"
Font-Names= "Arial"
ForeColor="Blue"
OnSelectedNodeChanged="Node_Changed"
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>
<hr />
<asp:Label id="Message"
runat="server"/>
</form>
</body>
</html>
Remarks
Use the IndexOf method to determine the zero-based index of the specified TreeNode object in the TreeNodeCollection object. If the node is not in the collection, the method returns -1.
Note
If the specified node appears multiple times in the collection, the index of the first occurrence is returned.