سلام ، من یه لیست فایل دارم که به صورت parent , child هست که تو treeview نمایش می دهم.حالا میخوام بتونم تو treeview جستجو کنم و بتونم node خاصی رو انتخاب کنم.چطوری میشه اینکارو کرد ؟ممنوم میشم راهنماییم کنید.
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; }; }
ممنون از راهنماییتون کد رو تو برنامم کپی کردم ولی یه جاهایی مشکل داره تو عکس ضمیمه کردم
جاهایی که قرمز شده رو نمیدونم باید چیکار کنم.
یک نمونه ضمیمه کنید تا براتون تکمیل کنم
ممنونم کدام ایناس
یک Sample ضمیمه کنید تا بتونم کامل کنم
متاسفانه وقت ندارم از اول بسازم
این لینک رو ببینید
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)