مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

mamooshgol

عضویت از 1394/06/16

جستجو در TreeView

  • چهارشنبه 2 دی 1394
  • 10:34
تشکر میکنم

سلام ، من یه لیست فایل دارم که به صورت parent , child هست که تو treeview نمایش می دهم.حالا میخوام بتونم تو treeview جستجو کنم و بتونم node خاصی رو انتخاب کنم.چطوری میشه اینکارو کرد ؟ممنوم میشم راهنماییم کنید.

پاسخ های این پرسش

تعداد پاسخ ها : 8 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 2 دی 1394
  • 11:11
  private List<TreeNode> CurrentNodeMatches = new List<TreeNode>();

    private int LastNodeIndex = 0;

    private string LastSearchText;


    private void button1_Click(object sender, EventArgs e)
    {


        string searchText = this.textBox1.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 (LastNodeIndex >= 0 && CurrentNodeMatches.Count > 0 && LastNodeIndex < CurrentNodeMatches.Count)
        {
            TreeNode selectedNode = CurrentNodeMatches[LastNodeIndex];
            LastNodeIndex++;
            this.treeView1.SelectedNode = selectedNode;
            this.treeView1.SelectedNode.Expand();
            this.treeView1.Select();

        }
    } 

    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;
        };

    }

 

کاربر سایت

mamooshgol

عضویت از 1394/06/16

  • چهارشنبه 2 دی 1394
  • 12:03

ممنون از راهنماییتون کد رو تو برنامم کپی کردم ولی یه جاهایی مشکل داره تو عکس ضمیمه کردم 

کاربر سایت

mamooshgol

عضویت از 1394/06/16

  • چهارشنبه 2 دی 1394
  • 12:05

جاهایی که قرمز شده رو نمیدونم باید چیکار کنم.

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 2 دی 1394
  • 12:13

یک نمونه ضمیمه کنید تا براتون تکمیل کنم

کاربر سایت

mamooshgol

عضویت از 1394/06/16

  • چهارشنبه 2 دی 1394
  • 13:04

ممنونم کدام ایناس 

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 2 دی 1394
  • 13:09

یک Sample ضمیمه کنید تا بتونم کامل کنم

متاسفانه وقت ندارم از اول بسازم

کاربر سایت

mamooshgol

عضویت از 1394/06/16

  • چهارشنبه 2 دی 1394
  • 14:14

فایل ضمیمه کردم

فایل های ضمیمه

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 2 دی 1394
  • 16:05

این لینک رو ببینید

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)