不废话,直接上代码!
public class NodeSorter : IComparer
{
public int Compare(object x, object y)
{
TreeNode tx = x as TreeNode;
TreeNode ty = y as TreeNode;
if (tx.Nodes.Count > 0 && ty.Nodes.Count > 0)
{
if (tx.Nodes[0].Level == 2)
return string.Compare(tx.Nodes[0].Text, ty.Nodes[0].Text);
}
else
{
if (tx.Nodes.Count > 0)
{
if (tx.Nodes[0].Level == 2)
return ty.Nodes.Count - tx.Nodes.Count;
}
if (ty.Nodes.Count > 0)
{
if (ty.Nodes[0].Level == 2)
return ty.Nodes.Count - tx.Nodes.Count;
}
}
return 1;
}
}
使用代码:
treeview1.TreeViewNodeSorter = new NodeSorter();