private TreeNode node = null;  // Global variableprivate void FindNode(string text,TreeNodeCollection nodes)
{
    foreach(TreeNode nod in nodes.Nodes)
    {
        if(nod.Text == text)
        {
            this.node = nod;
            return;
        }
        if(nod.Nodes.Count > 0)
            FindNode(nod.Nodes);
    }
}// in your method to invoke 
FindNode(yourkeyword,treeview1.Nodes);
// Find Next Node is hard to write,sorry