• c#中treeview的使用方法(转 )


    本文主要介绍treeView控件中,添加,修改、删除节点的操作,

    首先当窗体加载的时候,我们添加上图中所示的节点。

    当点击“Delete the Selected”按钮时,被选中的节点将被删除。

    当点击“Edit the Selected”按钮式,被选中的节点变成修改状态,此时我们可以对其修改。

    c中treeview的使用方法 - Hope - Hope的博客

    其代码如下:

           private void Form1_Load(object sender, EventArgs e)
           {
               treeView1.LabelEdit = true;//可编辑状态。

    //添加一个节点,这个结点是根节点。
               TreeNode node = new TreeNode();
               node.Text = "hope";
               treeView1.Nodes.Add(node);
               TreeNode node1 = new TreeNode();
               node1.Text = "hopeone";
               TreeNode node11 = new TreeNode();
               node11.Text ="hopeoneone";          
               TreeNode node2 = new TreeNode();
               node2.Text = "hopetwo";
               node1.Nodes.Add(node11);//在node1下面在添加一个结点。
               node.Nodes.Add(node1);//node下的两个子节点。
               node.Nodes.Add(node2);


               
               TreeNode t = newTreeNode("basil");//作为根节点。
               treeView1.Nodes.Add(t);
               TreeNode t1 = new TreeNode("basilone");
               t.Nodes.Add(t1);
               TreeNode t2 = new TreeNode("basiltwo");
               t.Nodes.Add(t2);


           }

           private void button1_Click(object sender, EventArgs e)
            {//点击该按钮的时候,会移除选中项
               treeView1.Nodes.Remove(treeView1.SelectedNode);
           }

           private void button2_Click(object sender, EventArgs e)
           {//点击这个按钮的时候,可以修改选中项

    注意:在使用这个属性的时候,必须设置treeView1.LabelEdit =true,否则会提示错误。
               treeView1.SelectedNode.BeginEdit();
           }

     

     

     

     

     

     

    C#中Treeview判断选择的节点并执行不同的方法

    关于控件Treeview,如何在点击不同的节点(包括父节点和父节点下的子节点)触发不同的事件,执行相应的方法?
    方法1:
    treeView1_AfterSelect事件就是treeView1中节点被选择触发的事件,e.Node指的是当前选中的节点,e.Node.Nodes指的是当前选中节点的子节点集合。

    例如:
            private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
            {
                if (e.Action == TreeViewAction.ByMouse)
                {
                    if (e.Node.Parent != null && e.Node.Parent.Index == 0)//当前选中的节点有父节点,并且该父节点在相同级别的父节点中排行第一。
                    {  if(e.Node.Index==0)//当前选中节点在所有的兄弟节点中排第 一                   调用相应的方法();
                    }
                    if(e.Node.Parent==null&&e.Node.Index==4)//表示当前节点没有父节点,并且在兄弟节点中排行第五(由零开始索引)

    {

                   调用相应的方法();
                     }
                }
            }
    方法二:通过节点的Name属性来判断具体是哪个节点被选择,并执行相应的方法(这种方法效率高一些)
          private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
             {
                  if (e.Action == TreeViewAction.ByMouse)
                {
                  if(e.Node.Nodes.Count==0)//说明当前选中节点没有子节点
                   if(e.Node.name="aaa")
                      {
                           执行相应的方法();
                      }


                  else if(e.Node.Name="bbb")
                      {
                          执行相应的方法();
                      }
                 }
             }


     

     

     

     

     

     

    C# 怎么判断TreeView选中的是子节点 ?并且是属于哪个父节点?

     

     

    TreeNode selNode = tree.SelectedNode;
                if (selNode == null)
                {
                    //防止空引用
                    return;
                }
                if (selNode.Parent != null)
                {
                    //为有父亲节点的,
                    TreeNode parentNode = selNode.Parent;//得到父亲节点
                    
                    if (selNode.Nodes.Count == 0)
                    {
                        //为没有子节点,即选中的节点为叶子节点
                    }
                }

     

     
     
     
    C#.Net中TreeView控件右键选择节点问题处理
     
    1. private void treeView1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)  
    2. {  
    3. if(e.Button==MouseButtons.Right)  
    4. {  
    5. TreeNode tn=treeView1.GetNodeAt(e.X,e.Y);  
    6. if(tn!=null)treeView1.SelectedNode = tn;  
    7. }  
     
     
     
     
    treeView默认 展开
     
    treeView1.ExpandAll();
     
    默认选中TreeVIew中的一个节点
     

     //先找到你要设置选中的节点

                TreeNode tn = treeView1.Nodes[3];

                //把要设置的节点给SelectedNode

                this.treeView1.SelectedNode = tn;

    //this.TreeView1.SelectedNodeIndex="";
     
     
     
     
    TreeView,左键单击节点时可修改节点名称
     
    TreeView本身可支持左键修改名称
    在初始化时设置:
    TreeView.LabelEdit = true; 
    这样应用程序的treeview生成以后就支持单击节点修改。
    
    
    如果不想左键修改,可在treeView1_MouseDown中设置treeView1.LabelEdit = false; 
    
    
    右键菜单 重命名
    
    treeView1.LabelEdit = true;
    
    treeView.SelectedNode.BeginEdit();
    
    
    
    
    
    
    
    
    TreeVIew清空
    
    TreeView.Nodes.Clear()
    
    
  • 相关阅读:
    试着把.net的GC讲清楚(2)
    试着把.net的GC讲清楚(1)
    【特性】select语句中使用字符串链接获取字段值失败
    twemproxy分片处理原理--剖析twemproxy代码正编
    robot framework的使用说明
    网络故障模拟,cpu高压以及docker中的实现
    我眼中的robot framework
    twemproxyMemcache协议解析探索——剖析twemproxy代码正编补充
    twemproxy代理主干流程——剖析twemproxy代码正编
    Leetcode 617 Merge Two Binary Trees 二叉树
  • 原文地址:https://www.cnblogs.com/liuxingleiyu/p/5851488.html
Copyright © 2020-2023  润新知