Сортировка Treeview - C#
Формулировка задачи:
Всем привет. Есть Treeview, в котором есть след. узлы:
1. текст1
2. текст2
3. текст3
...
9. текст9
10. текст10
11. текст11
так вот. Я хочу, чтобы он их сортировал именно так, как я указал выше.
а сейчас он сортирует так (через treeview1.sort()):
1. текст1
10. текст10
11. текст11
2. текст2
3. текст3
...
9. текст9
куда копать, подскажите, пожалуйста)
спасибо
Решение задачи: «Сортировка Treeview»
textual
Листинг программы
// treeView1.Sort(); treeView1.TreeViewNodeSorter = new MySortClass(); //////////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////////////////// public class MySortClass : IComparer { public int Compare(object _left, object _right) { TreeNode left = _left as TreeNode; TreeNode right = _right as TreeNode; int leftNumber = 0; int rightNumber = 0; System.Text.RegularExpressions.Regex leftRegex = new System.Text.RegularExpressions.Regex(@"\d+"); System.Text.RegularExpressions.Match leftMatch = leftRegex.Match(left.Text); System.Text.RegularExpressions.Regex rightRegex = new System.Text.RegularExpressions.Regex(@"\d+"); System.Text.RegularExpressions.Match rightMatch = leftRegex.Match(right.Text); if (leftMatch.Success && rightMatch.Success) { leftNumber = Convert.ToInt32(leftMatch.Value); rightNumber = Convert.ToInt32(rightMatch.Value); if (leftNumber != rightNumber) return leftNumber - rightNumber; return 0; } return 0; } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д