Devexpress gridview флажок выбора столбца?
Я хочу установить флажок флажок в gridview. Следующие коды делают это:
gridSettings.PreRender = (sender, e) =>
{
MVCxGridView gridView = sender as MVCxGridView;
for (int i = 0; i < gridView.VisibleRowCount; i++)
{
gridView.Selection.SetSelection(i, (bool)gridView.GetRowValues(i, "IsAssigned"));
}
};
Но у меня около 1 миллиона записей, поэтому время загрузки вида сетки слишком велико (более 2 минут). Поскольку devexpress, цикл всех записей, страница за страницей, чтобы найти выбранные строки (моя коллекция типа IQueryable). Если я не пытаюсь установить этот столбец, devexpress использует список IQueryable, поэтому он выбирает только одну выгружаемую информацию.
Что я могу сделать, чтобы зациклить только видимые строки?
1 ответ
Решение
Я изменил свои коды, как показано ниже, я получаю выбранные строки с tempdata в контроллере.
gridSettings.PreRender = (sender, e) =>
{
MVCxGridView gridView = sender as MVCxGridView;
if ((gridView != null) && (ViewData["selectedRows"] != null))
{
int[] selectedRows = (int[])ViewData["selectedRows"];
foreach (int key in selectedRows)
{
gridView.Selection.SelectRowByKey(key);
}
}
};