100分:treeview中同级节点排序问题??
我现在有一个treeview的树形结构,假如他有name列,order列
例如:
    Name           Order
|root0               
     |a              1
     |b              2
     |c              3
        |d           1
        |e           2
        |f           3  
          |g         1
          |h         2
          |e         3  就是按照这样排序,还请高手指教??
------解决方案--------------------先在内存排序,再添加节点到TreeView
------解决方案--------------------
       private void Form1_Load(object sender, EventArgs e)
       {
           SortTree(treeView1.Nodes);
       }
       public void SortTree(TreeNodeCollection p_Node)
       {          
           SortComparer _NodeSort = new SortComparer();
           TreeNode[] _Node = new TreeNode[p_Node.Count];
           for (int i = 0; i != p_Node.Count; i++)
           {
               _Node[i] = p_Node[i];
               SortTree(_Node[i].Nodes);
           }  
           Array.Sort(_Node, _NodeSort);
           p_Node.Clear();          
           for (int i = 0; i != _Node.Length; i++)
           {
               p_Node.Add(_Node[i]);               
           }               
       }
       public class SortComparer : IComparer
       {
           int IComparer.Compare(Object x, Object y)
           {
               TreeNode _XNode = (TreeNode)x;
               TreeNode _YNode = (TreeNode)y;
               //这里取你的 Order  进行比较排序
               return string.Compare(_XNode.Name, _YNode.Name);
           }
       }
------解决方案--------------------6楼的不错
楼主也可以在绑定前先排序好。
------解决方案--------------------不错,绑定前先排序
------解决方案--------------------使用绑定方法的话,可以对绑定源进行排序的……排完序后对树进行一次刷新就完了。
------解决方案--------------------支持6楼