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);
        }
    }
};    
Другие вопросы по тегам