Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
datagridview (скорость заполнения таблицы)
|
|||
|---|---|---|---|
|
#18+
Приветствую ВСЕХ! есть datagridview, заполняю данными из запроса, запрос типа Select aaa,bbb,xxx_0,zzz_0,xxx_1,zzz_1..... и так далее запрос возвращает около 1к записей и загрузка длится приблизительно 5-10 секунд, данные из запроса читаются почти моментально. Вопрос как ускорить работу грида? если пойти путем Биндинга данных, как реализовать связывание с объектом состоящим из списка полей? (типа class x{list<z> zz} class z{public int a; public string b; ....}) пример заполнения грида gridView.Rows.Add(); gridView.Rows[gridView.Rows.Count - 1].Cells[0].Style.BackColor = System.Drawing.Color.FromArgb(235, 235, 235); gridView.Rows[gridView.Rows.Count - 1].Cells[1].Style.BackColor = System.Drawing.Color.FromArgb(235, 235, 235); gridView.Rows[gridView.Rows.Count - 1].Cells[2].Style.BackColor = System.Drawing.Color.FromArgb(235, 235, 235); gridView.Rows[gridView.Rows.Count - 1].Cells[0].Value = false; gridView.Rows[gridView.Rows.Count - 1].Cells[1].Value = reader["aaa"].ToString(); gridView.Rows[gridView.Rows.Count - 1].Cells[2].Value = reader["bbb"].ToString(); int temp = 0; for (int i = 0; i < list.Count; i++) { gridView.Rows[gridView.Rows.Count - 1].Cells[3 + i].ReadOnly = (reader["xxx_" + list[i].ToString()] == DBNull.Value); gridView.Rows[gridView.Rows.Count - 1].Cells[3 + i].Style.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; if (!gridView.Rows[gridView.Rows.Count - 1].Cells[3 + i].ReadOnly) { gridView.Rows[gridView.Rows.Count - 1].Cells[3 + i].Value = reader["zzz_" + list[i].ToString()].ToString(); } } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 15:11 |
|
||
|
datagridview (скорость заполнения таблицы)
|
|||
|---|---|---|---|
|
#18+
Mixon, Определенно, разбить на страницы. 5-10 секунд... Не каждый захочет ждать столько. Это не юзер-фриендли, да и на какой столько строк сразу выводить? Еще лучше - поиск по ключевым полям забацать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 15:13 |
|
||
|
datagridview (скорость заполнения таблицы)
|
|||
|---|---|---|---|
|
#18+
Mixon пример заполнения грида gridView.Rows.Add(); ... Не пробовали так? gridView.DataSource = new BindingList<ИМЯ_КЛАССА>(Запрос, возвращающий IEnumerable<ИМЯ_КЛАССА>) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 15:19 |
|
||
|
datagridview (скорость заполнения таблицы)
|
|||
|---|---|---|---|
|
#18+
Arm79Mixon пример заполнения грида gridView.Rows.Add(); ... Не пробовали так? gridView.DataSource = new BindingList<ИМЯ_КЛАССА>(Запрос, возвращающий IEnumerable<ИМЯ_КЛАССА>) как C# это поймет? class x { public list<z> zz } class z { public int a; public string b; .... } gridView.DataSource = new BindingList<x>(Запрос, возвращающий IEnumerable<ИМЯ_КЛАССА>) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 15:30 |
|
||
|
datagridview (скорость заполнения таблицы)
|
|||
|---|---|---|---|
|
#18+
Mixon, Учимся использовать тэги оформления кода - FAQ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 15:34 |
|
||
|
datagridview (скорость заполнения таблицы)
|
|||
|---|---|---|---|
|
#18+
Mixon, Что мешает сделать джойн? Не это нужно? Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 15:46 |
|
||
|
datagridview (скорость заполнения таблицы)
|
|||
|---|---|---|---|
|
#18+
Попробую, спасибо! Arm79Mixon, Что мешает сделать джойн? Не это нужно? Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 16:03 |
|
||
|
datagridview (скорость заполнения таблицы)
|
|||
|---|---|---|---|
|
#18+
Забавно как все-таки некоторые люди упорно выбирают неверную дорогу: на пути они теряют коней, переходят вброд озера, перелезают через скалы, ломают руки-ноги, но они упорно выбирают неверный путь. Потому что в голове у них... Да кто ж его знает что у них там... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 16:18 |
|
||
|
datagridview (скорость заполнения таблицы)
|
|||
|---|---|---|---|
|
#18+
проблема была в MixonПриветствую ВСЕХ! есть datagridview, заполняю данными из запроса, запрос типа Select aaa,bbb,xxx_0,zzz_0,xxx_1,zzz_1..... и так далее запрос возвращает около 1к записей и загрузка длится приблизительно 5-10 секунд, данные из запроса читаются почти моментально. Вопрос как ускорить работу грида? если пойти путем Биндинга данных, как реализовать связывание с объектом состоящим из списка полей? (типа class x{list<z> zz} class z{public int a; public string b; ....}) пример заполнения грида Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 16:38 |
|
||
|
datagridview (скорость заполнения таблицы)
|
|||
|---|---|---|---|
|
#18+
Mixon, gridView.Rows[gridView.Rows.Count - 1].Cells[3 + i].Style.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 16:39 |
|
||
|
datagridview (скорость заполнения таблицы)
|
|||
|---|---|---|---|
|
#18+
MixonMixon, gridView.Rows[gridView.Rows.Count - 1].Cells[3 + i].Style.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleRight; Ах, так вот оно в чем проблема-то была оказывается! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.03.2015, 17:20 |
|
||
|
|

start [/forum/topic.php?fid=20&msg=38900251&tid=1401817]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
41ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
1ms |
| others: | 14ms |
| total: | 149ms |

| 0 / 0 |
