powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Почему так медленно отображаются данные в DataGridView ?
25 сообщений из 34, страница 1 из 2
Почему так медленно отображаются данные в DataGridView ?
    #39198995
AlexanP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вроде обычное подключение и простая выборка, в ней около 300 строк всего.
Но когда нажимаешь PgDn или стрелку вниз такое ощущение , что грид перерисовывается не спеша.
Если этот же запрос выполнять в Delphi (DbGrid), то там мгновенно делается.
Куда смотреть ?


DataGridView DataGridView1 = new DataGridView();
DataGridView1.Width = 850; // this.Width;
DataGridView1.Height = 450;
// DataGridView1.Dock = DockStyle.Fill;
this.Controls.Add(DataGridView1);

string connStr = @"Data Source=DC;Initial Catalog=TEST;Integrated Security=True";
SqlConnection conn = new SqlConnection(connStr);
try { conn.Open(); }
catch (SqlException se)
{
MessageBox.Show("Ошибка подключения:{0}"+se.Message);
return;
}
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = new SqlCommand("select * from Samples", conn);
DataSet dataSet1 = new DataSet();
da.Fill(dataSet1,"Tae");
DataGridView1.DataMember = "Tae";
DataGridView1.DataSource = dataSet1;
conn.Close();
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199008
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199111
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
AlexanPКуда смотреть ?
На характеристики видеокарты
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199117
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SELECT * - зло
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199122
AlexanP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если этот же запрос запустить в MS Management Studio и поставить там Result->Grid, то такого эффекта "перерисовки" грида нет.
Нажмешь PgDn и вся страница (на весь экран) мгновенно обновится.
Может что-то у грида надо подкручивать ?
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199126
AlexanP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SELECT * - зло

Да там 15 колонок, три текстовых.
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199133
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexanPЕсли этот же запрос запустить в MS Management Studio и поставить там Result->Grid, то такого эффекта "перерисовки" грида нет.
Нажмешь PgDn и вся страница (на весь экран) мгновенно обновится.
Может что-то у грида надо подкручивать ?
Наивно полагаешь студия этот грид использует?
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199134
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexanPЕсли этот же запрос запустить в MS Management Studio http://www.somewheresomehow.ru/fast-in-ssms-slow-in-app-part1/

Это не про грид и не про перерисовку, а просто к тому, может сам запрос медленно выполняется?
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199136
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотя... тупой select *
Конечно, лучше указывать конкретные поля.

А запуск случайно не на серверной операционке?
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199137
AlexanP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А также этот эффект особенно заметен когда обратно возвращаешься на это окно с гридом.
Прямо по строкам сверху вниз бежит перерисовка гида.....
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199143
Активист
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexanP,

c# это - только компилятор. его компоненты использовать нельзя.
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199147
AlexanP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Оставил 4 колонки:
select SampleID,Brief,Name,FileName from Sample
Чуть быстрее, но эффект "перерисовки" тот-же.

Но как объяснить, что при возврате из другого окна в мое приложение с гридом идет такая перерисовка ?
На всякий случай смотрю и Profiler (Duration=50) и диспетчер задач (ничего другого не работает).
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199157
AlexanP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поиск в интернете дает следующее:

Стандартный DataGrid/DataGridView для .NET Windows.Forms имеет известные малоприятные "фичи":
медленная с морганием перерисовка содержимого таблицы (на invalidate или refresh, при смещении окна или изменении размера)
и т.д.


А чем тогда народ пользуется в основном ?
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199159
Активист
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexanP,

DevEx попробуй.
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199178
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Shocker.ProЭто не про грид и не про перерисовку, а просто к тому, может сам запрос медленно выполняется?
Грид не будет перерисовыватся, пока все данные не придут.



AlexanP,

Двойную буферизацию ставили?
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199216
Barkan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexanP,

Вот чисто ради эксперимента, попробуй в DataGridView кинуть "чистый" DataTable, без DataSet.

PS. Сколько лет пользую DataGridView, а таких тормозов с ним не встречал.
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199333
Фотография Алексей К
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилSELECT * - злоНе всегда.
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199344
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилSELECT * - зло
Какие будут аргументы?
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199347
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexanP,
Запусти профайлер в студии и посмотри кто тормозит.
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199382
AlexanP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Двойную буферизацию ставили?

А что это и где ее поставить ?

Я на всякий случай еще раз взял тестовую базу AdventureWorks.... Сделал источник на ней.
Там есть таблица dimCurrency (105 строк, 3 колонки).
Эту таблицу я сейчас просто "кинул" на форму.
На панели образовались ...DataSet, ...BindingSource, ...TableAdapter, ...AdapterManager, ...BindingNavigator.
Все, больше ничего не делаю. Запускаю приложение. Все работает, но перерисовка также медленная.
Причем я еще раз говорю, что если я закрываю окно моего приложения любым другим, а потом возвращаюсь, то идет неспешная перерисовка. Особенно заметно когда на весь экран этот грид.
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199390
AlexanP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
BarkanВот чисто ради эксперимента, попробуй в DataGridView кинуть "чистый" DataTable, без DataSet.


Если можно разъясните, что это значит....
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199409
Артем G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
AlexanPBarkanВот чисто ради эксперимента, попробуй в DataGridView кинуть "чистый" DataTable, без DataSet.


Если можно разъясните, что это значит....

Это значит заполни ДатаТабл, и укажи его источником для ДатаГрида.

DataTable = Данные из базы
DataGridView.DataSource = DataTable
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199524
AlexanP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Артем GЭто значит заполни ДатаТабл, и укажи его источником для ДатаГрида.

DataTable = Данные из базы
DataGridView.DataSource = DataTable


Если это имеется ввиду, то сделал так. Результат тот же.


String connectionString =
"Integrated Security=SSPI;Persist Security Info=False;" +
"Initial Catalog=AdventureWorksDW2008R2;Data Source=DC";

SqlDataAdapter dataAdapter = new SqlDataAdapter("select CurrencyKey, CurrencyAlternateKey, CurrencyName from dimCurrency", connectionString);
DataTable table = new DataTable();
dataAdapter.Fill(table);
dataGridView1.DataSource = table;
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199924
AlexanP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DevEx попробуй


Да, в DevEx судя по примерам гриды нормально отображаются...
...
Рейтинг: 0 / 0
Почему так медленно отображаются данные в DataGridView ?
    #39199932
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexanP DevEx попробуй


Да, в DevEx судя по примерам гриды нормально отображаются...
Не стреляй себе в ногу.
...
Рейтинг: 0 / 0
25 сообщений из 34, страница 1 из 2
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Почему так медленно отображаются данные в DataGridView ?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]