如何C#中实现在TreeView查找某一节点
3个回答
展开全部
/// <summary>
/// 按钮事件
/// </summary>
private void button1_Click(object sender, EventArgs e)
{
//遍历Tree中的所有根节点
foreach (TreeNode node in this.tvList.Nodes)
{
//将每个根节点代入方法进行查找
TreeNode temp = FindNode(node, this.txtName.Text);
//找到输出结果
if (temp != null)
{
MessageBox.Show(string.Format("找到,深度{0},索引{1}", temp.Level, temp.Index));
return;
}
}
MessageBox.Show("没有找到");
}
//递归查询,找到返回该节点
private TreeNode FindNode(TreeNode node, string name)
{
//接受返回的节点
TreeNode ret = null;
//循环查找
foreach (TreeNode temp in node.Nodes)
{
//是否有子节点
if (temp.Nodes.Count != 0)
{
//如果找到
if ((ret = FindNode(temp, name)) != null)
{
return ret;
}
}
//如果找到
if (string.Equals(temp.Text, name))
{
return temp;
}
}
return ret;
}
可以实现你的要求,可以参考下
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询