TeeView中实现节点的上下移动(C#)

原创 2006年05月26日 14:53:00

private void menuItem3_Click(object sender, System.EventArgs e)
  {
   if(this.treeView1.SelectedNode.Parent!=null)
   {
    this.treeView1.BeginUpdate();
    int j= getSelectIndex();
    int tempindex = j;
    TreeNodeCollection tempNodes = this.treeView1.SelectedNode.Parent.Nodes;
    TreeNode tempNode;
    if(j>0)
    {
     for(int i=0;i<tempNodes.Count;i++)
     {
      
      if(0==j-1)
      {
       tempNode = tempNodes[1];
       tempNodes[1].Remove();
       tempNodes.Add( tempNode);

      }
      else if(0==j)
      {
       tempNode = tempNodes[0];
       tempNodes[0].Remove();
       tempNodes.Add( tempNode);
      }
      else
      {
       tempNode = tempNodes[0];
       tempNodes[0].Remove();
       tempNodes.Add( tempNode);
      }
      j--;
     }
    }
    this.treeView1.SelectedNode = tempNodes[tempindex-1];
    this.treeView1.EndUpdate();

   }


  }
  private int getSelectIndex()
  {
   if(this.treeView1.SelectedNode.Parent!=null)
   {
    TreeNodeCollection tempNodes = this.treeView1.SelectedNode.Parent.Nodes;
    for(int i=0;i<tempNodes.Count;i++)
    {
     if( tempNodes[i]==this.treeView1.SelectedNode)
      return i;
    }

   }
   return -1;
  }

  private void menuItem4_Click(object sender, System.EventArgs e)
  {
   if(this.treeView1.SelectedNode.Parent!=null)
   {
    this.treeView1.BeginUpdate();
    int j= getSelectIndex();
    int tempindex = j;
    TreeNodeCollection tempNodes = this.treeView1.SelectedNode.Parent.Nodes;
    TreeNode tempNode;
    if(j<tempNodes.Count-1)
    {
     for(int i=0;i<tempNodes.Count;i++)
     {
      
      if(0==j)
      {
       tempNode = tempNodes[1];
       tempNodes[1].Remove();
       tempNodes.Add( tempNode);

      }
       //      else if(0==j)
       //      {
       //       tempNode = tempNodes[0];
       //       tempNodes[0].Remove();
       //       tempNodes.Add( tempNode);
       //      }
      else
      {
       tempNode = tempNodes[0];
       tempNodes[0].Remove();
       tempNodes.Add( tempNode);
      }
      j--;
     }
    }
    this.treeView1.SelectedNode = tempNodes[tempindex+1];
    this.treeView1.EndUpdate();
   }
  }

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

C# TreeView树节点上下移动

/// /// 上移 /// /// /// private void tsbMoveUp_Click(obje...

C# 用Linq的方式实现对Xml文件的基本操作(创建xml文件、增删改查xml文件节点信息)

我的上一篇文章描述了用普通方法实现对xml文件的基本操作,感谢各位园友给我提的每一个建议,大家主要在说:用Linq去实现对xml的操作更加方便简洁,于是乎我就现学习了一下Linq to xml,由于是...

C# 实现对XML文件的基本操作(创建xml文件,增、删、改、查 xml节点信息)

这篇文章主要讲一下用C#如何实现对XML文件的基本操作,如:创建xml文件,增、删、改、查xml的节点信息。所使用的方法很基础,方便易懂

C# 用Linq的方式实现对Xml文件的基本操作(创建xml文件、增删改查xml文件节点信息)

http://www.cnblogs.com/mingmingruyuedlut/archive/2011/01/27/1946239.html 我的上一篇文章描述了用普通方法实现对xml文件的基本操...

C# 实现对XML文件的基本操作(创建xml文件,增、删、改、查 xml节点信息)

XML:Extensible Markup Language(可扩展标记语言)的缩写,是用来定义其它语言的一种元语言,其前身是SGML(Standard Generalized Markup Lang...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)