解决方案 »
- 收藏 不显示删除回复显示所有回复显示星级回复显示得分回复 进程用户SYSTEM和Administrator的区别
- 关于GridView超链接求助
- Ajax 获取数据的问题
- 网站之间数据交流的请教一下思路
- 请问用OWC生成显示在网页上的图表怎么保存到EXCEL文件中(环境:asp.net/C#)
- ASP.NET 写的发送邮件程序,如何跟踪邮件的阅读情况啊??求救.....
- 有想业余赚点外快的朋友吗???(要熟悉WEBGIS和JAVASCRIPT,才有机会哈)
- 模板页中的页面,里面有个按钮,点击按钮弹出新的页面怎么做呢?
- 请教各位大虾:怎样在 DataGrid 中用 CheckBox 进行批量删除?
- MVC 继承AuthorizeAttribute类重写 OnAuthorization 获取不到identity
- 未处理NHibernate.Exceptions.GenericADOException类型异常
- 导出CSV编码问题。。。。。。~~~~~~~~
想办法把你排序后的内容得到,就根据treeView对象得到的,或者其相关对象(Model等等)
然后把这些内容存入数据库。。
排序前treeView1.Nodes
与
排序后 treeView1.Nodes结果一样!现在就是获取不到最新的排序结果!
{
}
private void treeview1_DragEnter(object sender, DragEventArgs e)
{
}
private void treeview1_DragDrop(object sender, DragEventArgs e)
{}
拖动移动节点
节点移动http://topic.csdn.net/u/20080818/16/529d7b19-88d0-4f1c-be23-ca93d69bd478.html
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;
using System.Collections;
namespace NodeMove
{
class NodeMove
{
private void MovUp(TreeNode ObjNode)
{
//----节点的向上移动
if (ObjNode != null)
{
TreeNode newnode = new TreeNode();
//--------如果选中节点为最顶节点
if (ObjNode.Index == 0)
{
//-------------
}
else if (ObjNode.Index != 0)
{
newnode = (TreeNode)ObjNode.Clone();
//-------------若选中节点为根节点
if (ObjNode.Level == 0)
{
treeView1.Nodes.Insert(ObjNode.PrevNode.Index, newnode);
}
//-------------若选中节点并非根节点
else if (ObjNode.Level != 0)
{
ObjNode.Parent.Nodes.Insert(ObjNode.PrevNode.Index, newnode);
}
ObjNode.Remove();
ObjNode = newnode;
}
}
}
private void MovDown(TreeNode ObjNode)
{
//----节点的向下移动
if (ObjNode != null)
{
TreeNode newnode = new TreeNode();
//-------------如果选中的是根节点
if (ObjNode.Level == 0)
{
//---------如果选中节点为最底节点
if (ObjNode.Index == treeView1.Nodes.Count - 1)
{
//---------------
}
//---------如果选中的不是最底的节点
else
{
newnode = (TreeNode)ObjNode.Clone();
treeView1.Nodes.Insert(ObjNode.NextNode.Index + 1, newnode);
ObjNode.Remove();
ObjNode = newnode;
}
}
//-------------如果选中节点不是根节点
else if (ObjNode.Level != 0)
{
//---------如果选中最底的节点
if (ObjNode.Index == ObjNode.Parent.Nodes.Count - 1)
{
//-----------
}
//---------如果选中的不是最低的节点
else
{
newnode = (TreeNode)ObjNode.Clone();
ObjNode.Parent.Nodes.Insert(ObjNode.NextNode.Index + 1, newnode);
ObjNode.Remove();
ObjNode = newnode;
}
}
}
}
private void MovLeft(TreeNode ObjNode)
{
//-----节点向左移动(即成为原父节点的同级节点)
if (ObjNode != null)
{
TreeNode newnode = new TreeNode();
//-----如果接点是根节点
if (ObjNode.Parent == null)
{
//---------
}
//-----如果选中节点不是根节点
else
{
newnode = (TreeNode)ObjNode.Clone();
//-----如果选中的节点是第一级子节点
if (ObjNode.Level == 1)
{
treeView1.Nodes.Insert(ObjNode.Parent.Index + 1, newnode);
}
else
{
ObjNode.Parent.Parent.Nodes.Insert(ObjNode.Parent.Index + 1, newnode);
}
ObjNode.Remove();
ObjNode = newnode;
}
}
}
private void MovRight(TreeNode ObjNode)
{
//-----节点的向右移动(即成为上一个同级节点的最后一个子节点)
if (ObjNode != null)
{
TreeNode newnode = new TreeNode();
//-----如果节点是叶子节点
if (ObjNode.Nodes.Count == 0 && ObjNode.PrevNode == null)
{
//--------
}
//-----如果节点是第一个根节点
else if (ObjNode.Parent == null && ObjNode.Index == 0)
{
//--------
}
//-----
else
{
newnode = (TreeNode)ObjNode.Clone();
ObjNode.PrevNode.Nodes.Insert(ObjNode.PrevNode.Nodes.Count, newnode);
ObjNode.Remove();
ObjNode = newnode;
}
}
}
}
}