Добавление новой строки в правильном положении к отсортированному пользователем wingrid с bindingsource - PullRequest
3 голосов
/ 18 марта 2009

У меня есть Infragistics UltraGrid, использующий источник связывания.

Если я добавляю новый объект в список привязок, он добавляет строку в конец сетки, что хорошо, если пользовательская сортировка отсутствует.

Вопрос: если пользователь щелкает заголовок столбца, чтобы отсортировать сетку, есть ли способ для появления новых строк в правильном отсортированном порядке, а не всегда внизу?

Пересортировка всех строк на каждой вставке слишком дорога.

1 Ответ

8 голосов
/ 26 марта 2009

Кажется, что-то вроде гетто. Поддержка инфраструктуры также указала, что метод RefreshSortPosition () является единственным выбором.

// Add to binding list which will trigger a row to be added to the bound ultragrid.
this.bindingList.Add(new Person("Smith", "John"));

// Get length since we know this will always be added to the end
int length = this.ultraGrid.Rows.All.Length;

// Get it to sort
this.ultraGrid.Rows[length - 1].RefreshSortPosition();

Чтобы быть немного более эффективным, вы всегда можете быть умнее, отключив перерисовку и т. Д., А затем вызвать обновление для ряда строк после пакета заказов и т. Д. *

Надеюсь, это поможет. Мне очень не повезло, гуглил эту проблему.

...