DataGridView и добавление столбцов программно - PullRequest
0 голосов
/ 26 июля 2010

Мне нужно использовать элемент управления DataGridView для отображения большого количества столбцов. У меня есть класс DataGridViewCell, который определяет собственный метод рисования для каждой ячейки. Я добавил столбцы так ...

        int ColumnCount = 5000;
        DataGridViewTextBoxCell cell = new DataGridViewTextBoxCell();
        for (int i = 0; i < ColumnCount; i++)
        {
            dataGridView1.Columns.Add(new DataGridViewColumn() { CellTemplate = cell, FillWeight = 1 });
        }

Проблема в том, что для добавления всех столбцов требуется много времени, гораздо дольше, чем нужно на самом деле. Когда я добавляю столбцы, я вижу, как размер полосы прокрутки внизу DataGridView становится меньше, так как сетка рисует каждый столбец каждый раз, когда я добавляю один.

Кто-нибудь знает о более быстром способе добавления большого количества столбцов или о том, как предотвратить обновление DataGridView, пока не будут добавлены все столбцы?

Я пытался отключить изменение размера, SuspendLayout() и установку dataGridView1.Visible = false.

1 Ответ

0 голосов
/ 22 марта 2011

Если вы используете VirtualMode = TRUE для DataGridView, вы можете обновить ТОЛЬКО часть экрана.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...