/// <Summary>
/// Search for a specified Node
/// </Summary>
/// <Param name = "tnparent"> node </param>
/// <Param name = "strvalue"> value </param>
/// <Returns> </returns>
Private treenode findnode (treenode tnparent, string strvalue)
{
Treenode treenode2 = new treenode ();
String venuecode = "";
If (tnparent = NULL) return NULL;
If (tnparent. value = strvalue) return tnparent;
Tnparent. Expand ();
Treenode tnret = NULL;
Foreach (treenode tn in tnparent. childnodes)
{
// Obtain the node Value
If (venuecode = "")
{
// Record the node
Treenode2 = tn;
Venuecode = tn. value;
}
Else
{
// When the selected node changes
If (venuecode! = Tn. value)
{
Treenode2.collapse ();
Venuecode = tn. value;
Treenode2 = tn;
}
}
Tnret = findnode (TN, strvalue );
If (tnret! = NULL) break;
}
Return tnret;
}
The method is called as follows:
// Search nodes cyclically
Foreach (treenode node in this. treeview1.nodes)
{
Treenode = findnode (node, venuecode );
If (treenode! = NULL)
{
Treenode. collapseall ();
Treenode. Selected = true;
State = 1;
Break;
}
}