zoukankan      html  css  js  c++  java
  • TreeView查获节点并选中节点

     

    TreeView查获节点并选中节点如果有多个节点则会继续查找下一个节点 支持关键字搜索

            private void SearchNodes(string SearchText, TreeNode StartNode)
            {
                TreeNode node = null;
                while (StartNode != null)
                {
                    if (StartNode.Text.ToLower().Contains(SearchText.ToLower()))
                    {
                        CurrentNodeMatches.Add(StartNode);
                    }
    
                    if (StartNode.Nodes.Count != 0)
                    {
                        SearchNodes(SearchText, StartNode.Nodes[0]);//Recursive Search 
                    }
                    StartNode = StartNode.NextNode;
                }
            }


    使用

     private List<TreeNode> CurrentNodeMatches = new List<TreeNode>();
            private int LastNodeIndex = 0;
            private string LastSearchText;
    
            
            private void SearchNodeText_Click(object sender, EventArgs e)
            {
                treeView1.Focus();
                string searchText = this.textBox7.Text;/////////////////
    if (String.IsNullOrEmpty(searchText)) { return; } if (LastSearchText != searchText) { //It's a new Search CurrentNodeMatches.Clear(); LastSearchText = searchText; LastNodeIndex = 0; SearchNodes(searchText, treeView1.Nodes[0]); } if (CurrentNodeMatches.Count == 0) MessageBox.Show("无查找记录!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information); if (LastNodeIndex >= 0 && CurrentNodeMatches.Count > 0 && LastNodeIndex < CurrentNodeMatches.Count) { TreeNode selectedNode = CurrentNodeMatches[LastNodeIndex]; LastNodeIndex++; this.treeView1.SelectedNode = selectedNode; this.treeView1.SelectedNode.Expand(); this.treeView1.Select(); } else LastNodeIndex = 0; }
  • 相关阅读:
    C#与面向对象编程语言
    Windows Communication Fundation(WCF)的安装和一些疑惑
    Windows Communication Foundation入门(Part Two)
    Design & Pattern团队公告
    解决方案、项目、程序集、命名空间
    你注意到了吗?
    我的个人主页
    PetShop与设计
    CKEditor/CKFinder升级心得
    [转贴]基于UDP、TCP协议的C#网络编程之一
  • 原文地址:https://www.cnblogs.com/xe2011/p/3588289.html
Copyright © 2011-2022 走看看