В моей программе VB.NET я использую Devexpress TreeList v9.2. Когда я запускаю программу, я заполняю TreeList из хранимой процедуры.
Когда я запускаю процедуру SQL в SQL Management Studio, мои данные возвращаются так, как я хочу. Например
- 3
- 6
- 33
- 42
- 54
- 206
- 226
- 733
- 6633
Тем не менее, когда я запускаю программу и заполняю TreeList теми же результатами из хранимой процедуры, я получаю:
Вы знаете, что я могу делать неправильно?
EDIT:
У меня есть «заказ по» в моей хранимой процедуре. Вот почему я получаю правильный порядок, когда запускаю хранимую процедуру из SQL Management Studio. Порядок по разбивает число на подстроки (так как они могут также содержать буквы), поэтому он сортируется численно. Почему-то похоже, что TreeList использует его как Strings, а не сохраняет его в исходном порядке сортировки.
EDIT:
Я создал еще один столбец, содержащий числовые данные, чтобы при сортировке таблицы по этому столбцу в порядке возрастания мои данные выглядели так, как я хочу. Но даже если я отправил SortOrder в свойствах, он не будет сортироваться, даже если маленький треугольник появился в заголовке сетки при запуске.
РЕШИТЬ:
Я решил это по телефону:
- tree.beginSort ()
- установка sortindex для столбца, по которому я хочу отсортировать, равным 0, а для остальных столбцов - -1:
tree.columns("colName").SortIndex
- установка сортировщика моего столбца в порядке возрастания:
tree.columns("colName").SortOrder = SortOrder.Ascending
- tree.endsort ()