溫馨提示×

在Winform Tree中實現節點的搜索功能

小樊
148
2024-08-12 06:45:35
欄目: 智能運維

要在Winform TreeView中實現節點的搜索功能,可以使用遞歸遍歷TreeView節點的方法來查找節點。以下是一個簡單的示例代碼:

private TreeNode FindNode(TreeNodeCollection nodes, string searchKeyword)
{
    foreach (TreeNode node in nodes)
    {
        if (node.Text.ToLower().Contains(searchKeyword.ToLower()))
        {
            return node;
        }
        
        TreeNode foundNode = FindNode(node.Nodes, searchKeyword);
        if (foundNode != null)
        {
            return foundNode;
        }
    }
    
    return null;
}

private void btnSearch_Click(object sender, EventArgs e)
{
    string searchKeyword = txtSearch.Text;
    TreeNode foundNode = FindNode(treeView1.Nodes, searchKeyword);
    
    if (foundNode != null)
    {
        treeView1.SelectedNode = foundNode;
        foundNode.Expand();
    }
    else
    {
        MessageBox.Show("Node not found.");
    }
}

在上面的示例中,FindNode方法用于遞歸遍歷TreeView節點,查找包含指定關鍵字的節點。然后在搜索按鈕的Click事件中調用FindNode方法,并將找到的節點設置為TreeView的選中節點,并展開該節點。如果未找到節點,則顯示消息框提示用戶。

你可以根據實際需求對搜索功能進行進一步擴展,例如添加搜索結果的高亮顯示等功能。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女