Altaf Ansari Ответов: 1

Как повторно открыть вкладку утилизировать управления TabControl в winform на C#


Я создал огромную форму с большим количеством элементов управления в TabControl, имеющем 20 вкладок.. Во время выполнения он использует огромную память, и пользовательские объекты превышают свой лимит в 10000 при открытии всех страниц вкладок. я хочу утилизировать последнюю использованную вкладку каждый раз при смене вкладки, но есть проблема, что мы не можем снова открыть вкладку dispose..

Что я уже пробовал:

я пробовал контейнер пользовательского управления для частичной загрузки элементов управления формами,но это не достойно...

1 Ответов

Рейтинг:
12

OriginalGriff

Вы не можете повторно открыть удаленные экземпляры класса: ресурсы, на которые они полагаются, были переработаны. Пытаться-это все равно что разбирать стол, используя ножки в качестве дров, а крышку в качестве двери, а затем пытаться подавать на нем ужин! Это не сработает: как только стол будет переработан, вам нужно будет купить новый.
Именно это вам и нужно делать с вашими вкладками: создавать новые экземпляры по мере необходимости.

Но, честно говоря, я думаю, что ваш дизайн пользовательского интерфейса сильно испорчен: я очень сомневаюсь, что любой пользователь захочет смотреть на 10 000 элементов управления, не говоря уже о том, чтобы ждать запуска вашего приложения - что, вероятно, займет значительное время с таким количеством отображаемых элементов - я бы, конечно, не стал!