当前位置:文档之家› c#.net控件treeview用法

c#.net控件treeview用法

//定位根节点 treeView1.SelectedNode = treeView1.Nodes [ 0 ] ; //折叠组件中所有节点 treeView1.SelectedNode.Collapse ( ) ;
至此已经把在 C#操作 TreeView 组件的常用方法和一般方法基本都介绍完了。 三. C#编写的一个完整操作 TreeView 组件的例子:
//判断选定的节点是否存在下一级节点 if ( treeView1.SelectedNode.Nodes.Count == 0 ) //删除节点 treeView1.SelectedNode.Remove ( ) ; else MessageBox.Show ( "请先删除此节点中的子节点!" , "提示信息" , MessageBoxButtons.OK , rmation ) ;
//定位根节点 treeView1.SelectedNode = treeView1.Nodes [ 0 ] ; //展开组件中的所有节点 treeView1.SelectedNode.ExpandAll ( ) ;
< II > .展开选定节点的下一级节点:
由于只是展开下一级节点,所以就没有必要用 ExpandAll ( )方法了。展开下一级节点只 需要调用 Expand ( )方法就可以了,下面是具体的实现代码:
下面是 C#编写一个的关于 TreeView 组件的例子,在这个例子中,结合以上介绍的常 用方法和一般方法,基本覆盖来 TreeView 组件的一些最常用的操作。譬如可以灵活的程序 中的 TreeView 组件中,进行加入子节点、兄弟节点、删除节点、折叠、展开等操作。其中 前三种基本操作是通过程序中弹出菜单中的功能来实现的,后面操作是通过程序中的按钮来 实现的。下面是此程序的代码节略(TreeView.cs):
tmp = new TreeNode ( textBox1.Text ) ; //在 TreeView 组件中加入兄弟节点 treeView1.SelectedNode.Parent.Nodes.Add ( tmp ) ; treeView1.ExpandAll ( ) ; } else { MessageBox.Show ( "TextBox 组 件 必 须 填 入 节 点 名 称 ! " , " 提 示 信 息 " , MessageBoxButtons.OK , rmation ) ; return ; } } TreeNode tnode = new TreeNode ( textBox1.Text ) ; } private void treeView1_MouseDown ( object sender , MouseEventArgs e ) { if ( e.Button == MouseButtons.Right ) contextMenu1.Show ( this , new Point ( e.X , e.Y ) ) ; } private void button1_Click ( object sender , System.EventArgs e ) { treeView1.SelectedNode.Expand ( ) ; } private void menuItem2_Click ( object sender , System.EventArgs e ) { AddChildNode ( ) ; } private void menuItem3_Click ( object sender , System.EventArgs e ) { AddParent ( ) ; } private void menuItem4_Click ( object sender , System.EventArgs e ) { //判断选定的节点是否存在下一级节点 if ( treeView1.SelectedNode.Nodes.Count == 0 ) //删除节点 treeView1.SelectedNode.Remove ( ) ; else MessageBox.Show ( "请先删除此节点中的子节点!" , "提示信息" , MessageBoxButtons.OK , rmation ) ; } private void button2_Click ( object sender , System.EventArgs e ) { //定位根节点
}
(2).加入兄弟节点:
所谓兄弟节点,就是在选定的节点的平级的节点。加入兄弟节点的方法和加入子节点的 方法基本一致,只是在最后的实现方法上有着略微的区别。加入兄弟节点的具体步骤,首先 也是要确定要加入的兄弟节点所处的位置,接着定义一个节点对象,最后调用 TreeView 类 中对兄弟节点加入的方法,加入此节点对象。加入兄弟节点和加入子节点的最大区别就在于 这最后一步。希望读者能够注意。下面是在 TreeView 组件加入一个兄弟节点的具体代码:
(3).删除节点:
删除节点就是删除 TreeView 组件中选定的节点,删除节点可以是子节点,也可以是兄 弟节点,但无论节点的性质如何,必须保证要删除的节点没有下一级节点,否则必须先删除 此节点中的所有下一级节点,然后再删除此节点。删除节点比起上面的二个操作要显得略微 简单,具体方法是:首先判断要删除的节点是否存在下一级节点,如果不存在,就调用 TreeView 类中的 Remove ( )方法,就可以删除节点了。下面是删除 TreeView 组件中节点的 具体代码:
c#.net 控件 treeview 用法
TreeView 组 件 是 由 多 个 类 来 定 义 的 , TreeView 组 件 是 由 命 名 空 间 "System.Windows.Forms"中的"TreeView"类来定义的,而其中的节点(即 Node),是由命名空 间"System.Windows.Forms"中的"TreeNode"来定义的。所以当在程序中创建一个 TreeView 对 象,其实只是创建了一个可以放置节点的"容器"。而在这个容器中加入一个节点,其实就是 加入了从 "TreeNode"类中创建的一个节点对象;同样删除一个节点,也就是删除一个 "TreeNode"节点对象。
using System ; using System.Drawing ; using System.Collections ;
using ponentModel ; using System.Windows.Forms ; using System.Data ; namespace 全面掌握 TreeView 组件的使用方法 { /// Form1 的摘要说明。 public class Form1 : Form { private TreeView treeView1 ; private Button button1 ; private Button button2 ; private Button button3 ; private MenuItem menuItem2 ; private MenuItem menuItem3 ; private MenuItem menuItem4 ; private ContextMenu contextMenu1 ; private TextBox textBox1 ; private Label label1 ; /// 必需的设计器变量。 private ponentModel.Container components = null ; public Form1 ( ) { //初始化窗体中的组件 InitializeComponent ( ) ; } /// 清理所有正在使用的资源。 protected override void Dispose ( bool disposing ) { if ( disposing ) { if ( components != null ) { components.Dispose ( ) ; } } base.Dispose ( disposing ) ; } private void InitializeComponent ( ) {
ELSE
{ //创建一个节点对象,并初始化 TreeNode tmp ; tmp = new TreeNode ( "节点名称" ) ; //在 TreeView 组件中加入子节点 treeView1.SelectedNode.Nodes.Add ( tmp ) ; treeView1.SelectedNode = tmp ; treeView1.ExpandAll ( ) ;
//首先判断是否选定组件中节点的位置 if ( treeView1.SelectedNode == null ) { MessageBox.Show ( " 请 选 择 一 个 节 点 " , " 提 示 信 息 " , MessageBoxButtons.OK , rmation ) ; } else { //创建一个节点对象,并初始化 TreeNode tmp ; tmp = new TreeNode ( textBox1.Text ) ; //在 TreeView 组件中加入兄弟节点 treeView1.SelectedNode.Parent.Nodes.Add ( tmp ) ; treeView1.ExpandAll ( ) ; }
//首先判断是否选定组件中的位置 IF ( TREEVIEW1.SELECTEDNODE == NULL ) { MESSAGEBOX.SHOW ( " 请 选 择 一 个 节 点 " , " 提 示 信 息 " , MESSAGEBOXBUTTONS.OK , RMATION ) ; }
相关主题