private void RecursiveMethod(TreeNode treeNode) { if (foo == bar) { MessageBox.Show(treeNode.Text); // I don't want to continue my recursive search!! } foreach (TreeNode tn in treeNode.Nodes) { PrintRecursive(tn); } } private void CallRecursive(TreeView treeView) { foreach (TreeNode n in treeView.Nodes) { RecursiveMethod(n); } }