c控件treeview用法
TreeView 组件是由多个类来定义的,TreeView 组件是由命名空间“System.Windows.s“ 中的“TreeView“类来定义的,而其中的节点 即 Node ,是由命名空间 “System.Windows.s“中的“TreeNode“ 来定义的。所以当在程序中创建一个 TreeView 对 象,其实只是创建了一个可以放置节点的“容器“ 。而在这个容器中加入一个节点,其实就 是加入了从“TreeNode“类中创建的一个节点对象;同样删除一个节点,也就是删除一个 “TreeNode“节点对象。一. 本文中介绍的程序设计及运行环境(1).微软视窗 2000 服 务器版(2)..Net Framework SDK 正式版二. C #操作 TreeView 组件中的一些常用方法以及具体实现TREEVIEW 组件虽然是一个操作起来比较麻烦的组件,但归根到底,可以总结为三 种基本操作加入子节点、加入兄弟节点和删除节点。掌握了这三种常用操作,对于在 编程中灵活运用 TREEVIEW 组件是十分必要的。下面就分别来加以介绍。(1).加入子节点所谓子节点,就是处于选定节点的下一级节点。加入子节点的具体过程是首先要 在 TREEVIEW 组件中定位要加入的子节点的位置, 然后创建一个节点对象,然后利用 TreeVeiw 类中对节点的加入方法(即Add 方法) ,加入此节点对象。下面就是在 treeView1 组件中加入一个子节点的具体代码 //首先判断是否选定组件中的位置 IF TREEVIEW1.SELECTEDNODE NULL { MESSAGEBOX.SHOW “请选择一个节点 “ , “提示信息“ , MESSAGEBOXBUTTONS.OK , MESSAGEBOXICON.INATION ; } ELSE { //创建一个节点对象,并初始化 TreeNode tmp ; tmp new TreeNode “ 节点名称“ ; //在 TreeView 组件中加入子节点 treeView1.SelectedNode.Nodes.Add tmp ; treeView1.SelectedNode tmp ; treeView1.ExpandAll ; } (2).加入兄弟节点 所谓兄弟节点,就是在选定的节点的平级的节点。加入兄弟节点的方法和加入子节点 的方法基本一致,只是在最后的实现方法上有着略微的区别。加入兄弟节点的具体步骤, 首先也是要确定要加入的兄弟节点所处的位置,接着定义一个节点对象,最后调用 TreeView 类中对兄弟节点加入的方法,加入此节点对象。加入兄弟节点和加入子节点的最 大区别就在于这最后一步。希望读者能够注意。下面是在 TreeView 组件加入一个兄弟节点 的具体代码 //首先判断是否选定组件中节点的位置 if treeView1.SelectedNode null { MessageBox.Show “请选择一个节点“ , “提示信息“ , MessageBoxButtons.OK , MessageBoxIcon.Ination ; } else { //创建一个节点对象,并初始化 TreeNode tmp ; tmp new TreeNode textBox1.Text ; //在 TreeView 组件中加入兄弟节点 treeView1.SelectedNode.Parent.Nodes.Add tmp ; treeView1.ExpandAll ; } (3).删除节点删除节点就是删除 TreeView 组件中选定的节点,删除节点可以是子节点,也可以是兄 弟节点,但无论节点的性质如何,必须保证要删除的节点没有下一级节点,否则必须先删 除此节点中的所有下一级节点,然后再删除此节点。删除节点比起上面的二个操作要显得 略微简单,具体方法是首先判断要删除的节点是否存在下一级节点,如果不存在,就调 用 TreeView 类中的 Remove 方法,就可以删除节点了。下面是删除 TreeView 组件中节 点的具体代码 //判断选定的节点是否存在下一级节点 if treeView1.SelectedNode.Nodes.Count 0 //删除节点 treeView1.SelectedNode.Remove ; else MessageBox.Show “请先删除此节点中的子节点“ , “提示信息“ , MessageBoxButtons.OK , MessageBoxIcon.Ination ; (4).TreeView 组件的一些其他常用操作其他的一些常用操作比起上面的三种操作,在具体实现上要显得简单许多。这些常用操作无非是,展开所有节点,展开指定的节点、和折叠所有节点。下面就来具体介绍一下.展开所有节点要展开 TreeView 组件中的所有节点,首先就要把选定的节点指针定位在 TreeView 组 件的根节点上,然后调用选定组件的 ExpandAll 方法就可以了,下面是具体代码 //定位根节点 treeView1.SelectedNode treeView1.Nodes [ 0 ] ; //展开组件中的所有节点 treeView1.SelectedNode.ExpandAll ;.展开选定节点的下一级节点由于只是展开下一级节点,所以就没有必要用 ExpandAll 方法了。展开下一级节点 只需要调用 Expand 方法就可以了,下面是具体的实现代码 treeView1.SelectedNode.Expand ;.折叠所有节点折叠所有节点和展开所有节点是一组互操作,具体实现的思路也大致相同,折叠所有 节点也是首先要把选定的节点指针定位在根节点上,然后调用选定组件的 Collapse 就可 以了,下面是具体的实现代码 //定位根节点 treeView1.SelectedNode treeView1.Nodes [ 0 ] ; //折叠组件中所有节点 treeView1.SelectedNode.Collapse ; 至此已经把在 C#操作 TreeView 组件的常用方法和一般方法基本都介绍完了。 三. C#编写的一个完整操作 TreeView 组件的例子下面是 C#编写一个的关于 TreeView 组件的例子,在这个例子中,结合以上介绍的常 用方法和一般方法,基本覆盖来 TreeView 组件的一些最常用的操作。譬如可以灵活的程序 中的 TreeView 组件中,进行加入子节点、兄弟节点、删除节点、折叠、展开等操作。其中 前三种基本操作是通过程序中弹出菜单中的功能来实现的,后面操作是通过程序中的按钮 来实现的。下面是此程序的代码节略(TreeView.cs ) using System ; using System.Drawing ; using System