![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| Moid |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 396 Регистрация: 27.3.2006 Репутация: 2 Всего: 3 |
Добавляю большое кол-во контролов около 8000:
Производительность заметно падает. Я так предаолагаю, что после добавления i-го контрола происходит перерисовка panel1 в следствии она и занимает около 90% ресурсов. Как обойти этот момент? Увидел panel1.BeginInvoke panel1.EndInvoke может он нужен? Как им воспользоватья? -------------------- "Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн |
|||
|
||||
| amarenkov |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 183 Регистрация: 21.2.2008 Где: Воронеж Репутация: нет Всего: нет |
||||
|
||||
| Moid |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 396 Регистрация: 27.3.2006 Репутация: 2 Всего: 3 |
BeginUpdate помница у каких-то текстовых были типа списка... точно не помню. У панели их нет. -------------------- "Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн |
|||
|
||||
| mihryak |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 731 Регистрация: 28.4.2007 Где: С-Пб Репутация: 19 Всего: 36 |
а можно вопрос - зачем 8000 контролов? программа для киборгов пишется? =)
(за иронией скрыт вполне серьёзный тезис - не стоит так делать, практической ценности 8000 чекбоксов иметь не могут) |
|||
|
||||
| Kefir |
|
|||
|
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
можешь попробовать SuspendLayout / ResumeLayout, но 8000 контролов это, конечно, сильно В)
|
|||
|
||||
| Moid |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 396 Регистрация: 27.3.2006 Репутация: 2 Всего: 3 |
Я и сам понимаю, что полезности от этого никакой, но... делать нужно именно так. Добавлено через 11 минут и 23 секунды Kefir, thanks. Не значительно, но быстрее. -------------------- "Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн |
|||
|
||||
| mihryak |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 731 Регистрация: 28.4.2007 Где: С-Пб Репутация: 19 Всего: 36 |
так опиши задачу, может, есть более гуманное решение
у меня на старенькой машинке 40 чекбоксов вызывали торможение UI даже после создания, просто сами по себе SuspendLayout / ResumeLayout помогут при массовом добавлении, даже необходимы, но не в этом случае, тут ничто не поможет пс. посмотри, сколько жрёт приложение памяти |
|||
|
||||
| Kefir |
|
|||
|
«Hakuna Matata» ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 1878 Регистрация: 25.1.2003 Где: Tampere, Suomi Репутация: 2 Всего: 87 |
Moid, кстати, лучше создавай свои 8000 внутри Suspend-Resume (если есть такая возможность). вроде должно ещё побыстрее тогда работать.
|
|||
|
||||
| Moid |
|
||||||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 396 Регистрация: 27.3.2006 Репутация: 2 Всего: 3 |
Внутри и делаю
Если не внутри, то какой смысл от них //-------
Другого решения не нужно... требования такие Добавлено через 14 минут и 27 секунд
Странно ... При добавлении 1000 практически ничего не съела (вообще копейки). При добавлении вся нагрузка на проц идет. -------------------- "Всё должно быть сделано настолько простым, насколько это возможно, но не проще" (с) А.Эйнштейн |
||||||||
|
|||||||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |