2009-08-12 20:10 1494人阅读 评论(2) 收藏 举报

C#中,通过单击上移,下移按钮移动树节点中的节点顺序的实现方法:

  1. public Form1()
  2. {
  3. InitializeComponent();
  4. }
  5. TreeNode preNode, nextNode, currentNode;
  6. int g_tag;
  7. string g_text;
  8. private void Form1_Load(object sender, EventArgs e)
  9. {
  10. TreeNode tn = new TreeNode();
  11. tn.Nodes.Add("北京");
  12. tn.Tag = 1;
  13. tn.Nodes.Add("湖北");
  14. tn.Tag = 2;
  15. tn.Nodes.Add("上海");
  16. tn.Tag = 3;
  17. tn.Nodes.Add("天津");
  18. tn.Tag = 4;
  19. treeView1.Nodes.Add(tn);
  20. }
  21. //上移
  22. private void button2_Click(object sender, EventArgs e)
  23. {
  24. currentNode = treeView1.SelectedNode;
  25. if (currentNode == null)
  26. {
  27. return;
  28. }
  29. else
  30. {
  31. preNode = currentNode.PrevNode;
  32. if (preNode == null)
  33. {
  34. return;
  35. }
  36. else
  37. {
  38. g_text= preNode.Text;
  39. g_tag=Convert.ToInt32( preNode.Tag);
  40. preNode.Tag= currentNode.Tag;
  41. preNode.Text = currentNode.Text;
  42. currentNode.Tag = g_tag;
  43. currentNode.Text = g_text;
  44. }
  45. }
  46. }
  47. //下移
  48. private void button3_Click(object sender, EventArgs e)
  49. {
  50. currentNode = treeView1.SelectedNode;
  51. if (currentNode == null)
  52. {
  53. return;
  54. }
  55. else
  56. {
  57. preNode = currentNode.NextNode;
  58. if (preNode == null)
  59. {
  60. return;
  61. }
  62. else
  63. {
  64. g_text = preNode.Text;
  65. g_tag = Convert.ToInt32(preNode.Tag);
  66. preNode.Tag = currentNode.Tag;
  67. preNode.Text = currentNode.Text;
  68. currentNode.Tag = g_tag;
  69. currentNode.Text = g_text;
  70. }
  71. }
  72. }

在窗体中拖1个treeView控件和两个button,按照上面思路实现就可以了。

C#上移,下移TreeView中的树节点顺序的更多相关文章

  1. AppBox中main树节点单击事件JS(还有叶子的节点的页面链接)

    AppBox中main.aspx.csif (menu.IsTreeLeaf) {                        node.Leaf = true;                   ...

  2. TreeView中右击直接获取节点的方法

    在TreeView中无法直接右击得到一个节点,因为当你选中其中一个右击时(不能是第一个)他会默认跳到第一个. 有时我们要想直接右击得到选中的节点,又时我们又想选中直接右击跳出一个快捷菜单怎么办了! 在 ...

  3. 修复jquery.treeview的增加子节点的方法的bug

    1.修复理由 在一个android项目中用到了treeview控件(本来自己通过android的原生api实现了一个http://www.cnblogs.com/Mr-Nobody/p/3527688 ...

  4. TreeView 树节点的处理

    TreeView 树节点的处理 using System; using System.Collections.Generic; using System.ComponentModel; using S ...

  5. 问题-在TreeView使用时,发现选中的树节点会闪烁或消失

    问题:在工程中选中一个树节点,鼠标焦点在树上,做某种操作时发现选中的点会消失?原因:如果只是BeginUpdate后,没有调用EndUpdate,树会全空.应该是BeginUpdate方法会刷新树,但 ...

  6. table中实现数据上移下移效果

    html 由于vue+Element项目中的table,没有开放的上移下移的api,但是能对数据操作,故思路为数组中的一条数据,再重新添加一条数据,办法有点笨,但是好歹也是实现了,望有好的办法的,请留 ...

  7. ext 树节点操作

    ext 树节点操作 tree :树    node:节点 1.全部展开 tree.expandAll(); 2.全部收缩 tree.collapseAll(); 3.得到父节点 node.parent ...

  8. WPF:使用Json.NET在TreeView中树形显示JSON数据

    原文 WPF:使用Json.NET在TreeView中树形显示JSON数据 据 读者可以参考这个开源的可以树形显示XML和JSON的工具: Mgen Object 603:XML/JSON树形显示小工 ...

  9. 向treeview中加载数据

    1.获取树节点的值,用事件AfterSelect加载(id值的获取,用name来获取) 2.双击treeview控件得到 private void treeView1_AfterSelect(obje ...

随机推荐

  1. SQL 循环插入10000条

    SQL> create table tt_test ( x int, y char(50) ); Table created. SQL> SQL> begin 2 for i in ...

  2. C#入门经典 Chapter5 变量的更多内容

    5.1类型转换 1.类型转换 1.1隐式转换:所有情况下可进行,编译器执行转换. 1.2显示转换 强制转换:强迫数据从一种类型转换为另一种类型. (<destinationType>)&l ...

  3. php中的抽象方法和抽象类

    1.什么是抽象方法?    我们在类里面定义的没有方法提的方法就是抽象方法.所谓的没有方法体指的是,在声明的时候没有大括号以及其中的内容,而是直接在声明时在方法名后加上分号结束,另外在声明抽象方法时方 ...

  4. c++中std::set自定义去重和排序函数

    c++中的std::set,是基于红黑树的平衡二叉树的数据结构实现的一种容器,因为其中所包含的元素的值是唯一的,因此主要用于去重和排序.这篇文章的目的在于探讨和分享如何正确使用std::set实现去重 ...

  5. String数据类型转换

    String是final类,提供字符串不可修改.强制类型转换,String类型无处不在.下面介绍一些常见的String数据类型转换. String数据类型转换成long.int.double.floa ...

  6. JS监听事件错误:Uncaught TypeError: xx(函数名)is not a function at HTMLInputElement.onclick

    事件监听一直出错,提示已定义的函数名不是一个函数,折腾了好久才想到,原来是函数名和JS内部关键字重名造成的. 以前也遇到过这种情况,但因为发生的概率比较小,就没太在意,但是这次感觉这方面确实需要注意, ...

  7. ECC 构筑安全可靠的区块链

    现在很多基于区块链技术的数字货币系统,比如:比特币和以太坊,它们都使用了椭圆曲线密码学(ECC, Elliptic Curve Cryptography)来保证货币的安全性. ECC 是一种公开密钥密 ...

  8. C# 返回值为 list<T>

    public List<T> test<T>(List<T> EntityList) where T : class { return EntityList; }

  9. 中望CAD VBA检测文件是否存在

    Option Explicit Private Declare Function PathFileExists Lib "shlwapi.dll" Alias "Path ...

  10. php base64互转pdf

    /* * base64转pdf */ function base642pdf($formTxt,$toPdf) { $file = file_get_contents($formTxt);//读 $d ...