带搜索功能,支持绑定对象到节点的TreeView辅助类
特点:
1、支持数叶子节点与对象绑定
2、支持xml导入,且数据类相关的xml可自定义,只和泛型的实现有关
3、支持节点搜索功能,可在树结构上要求只显示部分节点
4、用C#编写,但与平台关联性低,可移植
数据绑定效果:
搜索功能效果:
用法:
1 private void button1_Click(object sender, EventArgs e) 2 {//载入文档 3 s = new SearchTree<DsTest>(); 4 s.load_form_xml(@"XMLFile1.xml"); 5 treeView1.Nodes.Add(s.convert_to_tree(true)); 6 treeView1.ExpandAll(); 7 } 8 9 private void button2_Click(object sender, EventArgs e) 10 {//搜索 11 string rule = textBox1.Text; 12 s.hide_nodes_illegal(rule); 13 treeView1.Nodes.Clear(); 14 treeView1.Nodes.Add(s.convert_to_tree(true)); 15 treeView1.ExpandAll(); 16 } 17 18 private void treeView1_AfterSelect(object sender, TreeViewEventArgs e) 19 {//绑定对象获取 20 DsTest ds; 21 if (s.get_Info_by_name(e.Node.Name, out ds)) 22 { 23 label1.Text = "选中的节点的id是:"+ e.Node.Name; 24 label2.Text = "选中节点绑定的数据结构的值是:"+ ds.value; 25 } 26 27 }
源代码请点击这里