树控件TreeView的一些基本操作

 

一、添加和删除树节点

Ⅰ.添加节点、

        使用TreeView控件Nodes属性的Add方法,可以向控件中添加节点。

        语法:public virtual int Add(TreeNode node )

说明:node表示要添加到集合中的TreeNode。返回值表示添加到树节点集合中的TreeNode的从零开始的索引值。

        例:创建一个Windows应用程序,使用TreeView控件Nodes属性的Add方法向控件中添加2个父节点,然后再使用Add方法分别向2个父节点中添加3个子节点。代码如下:

private void Form1_Load(object sender, EventArgs e) {

    //为控件添加父节点

    TreeNode tn1 = treeView1.Nodes.Add( "植物" );

    TreeNode tn2 = treeView1.Nodes.Add( "动物" );

    //建立3个子节点

    TreeNode ntn1 = new TreeNode("四叶草");

    TreeNode ntn2 = new TreeNode("枫树");

    TreeNode ntn3 = new TreeNode("莲花");

    //将以上的3个子节点添加到第一个父节点

    tn1.Nodes.Add( ntn1 );

    tn1.Nodes.Add( ntn2 );

    tn1.Nodes.Add( ntn3 );

    //再建立3个子节点

    TreeNode stn1 = new TreeNode("老虎");

    TreeNode stn2 = new TreeNode("豹子");

    TreeNode stn3 = new TreeNode("狮子");

    //将以上的3个子节点添加到第一个父节点

    tn2.Nodes.Add(stn1);

    tn2.Nodes.Add(stn2);

    tn2.Nodes.Add(stn3);

}

 

Ⅱ.删除节点

        使用TreeView控件Nodes属性的Remove方法可以从树节点集合中删除指定的树节点。

        语法:public int Remove(TreeNode node )

说明:node表示要删除的TreeNode。

        例:创建一个Windows应用程序,通过TreeView控件Nodes属性的Remove方法删除选中的子节点。代码如下:

private void Form1_Load(object sender, EventArgs e){

    //为控件添加父节点

    TreeNode tn1 = treeView1.Nodes.Add("文件");

    //建立3个子节点

    TreeNode ntn1 = new TreeNode("搜索");

    TreeNode ntn2 = new TreeNode("游戏");

    TreeNode ntn3 = new TreeNode("学习");

    //将以上的3个子节点添加到第一个父节点

    tn1.Nodes.Add(ntn1);

    tn1.Nodes.Add(ntn2);

    tn1.Nodes.Add(ntn3);

}

 

private void button1_Click(object sender, EventArgs e){

    if (treeView1.SelectedNode.Text == "文件"){

        MessageBox.Show("请选择要删除的子节点");

    }

    else {

        treeView1.Nodes.Remove( treeView1.SelectedNode );

    }

}

 

二、获取TreeView控件中选定的节点

        可以在TreeView控件的AfterSelect事件中,使用EventArgs对象返回对已单击节点对象的引用。通过检查TreeViewEventArgs类(它包含与事件有关的数据),确定单击了哪个节点。

        例:创建一个Windows应用程序,在控件的在AfterSelect事件中获取控件中选中节点显示的文本。代码如下:

private void treeView1_AfterSelect(object sender, TreeViewEventArgs e){

    label1.Text = "当前选中的节点:" + e.Node.Text;

}

 

三、为TreeView控件中的节点设置图标

       设置TreeView控件的ImageList属性为想要使用的现有ImageList控件。这些属性可在设计器中使用“属性”窗口进行设置,也可在代码中设置。

       例:创建一个Windows应用程序,向控件中添加1个父节点和3个子节点。设置TreeView控件的ImageList属性为imageList1,通过设置控件的ImageIndex属性实现正常状况下节点显示的图像的索引为0,然后设置控件的SelectedImageIndex属性,实现选中某个节点后显示的图像的索引为1。代码如下:

 

private void Form1_Load(object sender, EventArgs e){

    //为控件添加父节点

    TreeNode tn1 = treeView1.Nodes.Add("文件");

    //建立3个子节点

    TreeNode ntn1 = new TreeNode("搜索");

    TreeNode ntn2 = new TreeNode("游戏");

    TreeNode ntn3 = new TreeNode("学习");

    //将以上的3个子节点添加到第一个父节点

    tn1.Nodes.Add(ntn1);

    tn1.Nodes.Add(ntn2);

    tn1.Nodes.Add(ntn3);

    //设置treeView1的ImageList属性为imageList1

    treeView1.ImageList = imageList1;

    imageList1.ImageSize = new Size(16,16);

    treeView1.ImageIndex = 0;   //设置treeView1控件节点的图标在imageList1控件中的索引为0

    treeView1.SelectedImageIndex = 1;   //选择某个节点后显示的图标在imageList1控件中的索引为1

}

你可能感兴趣的:(.NET那些事)