Поэтому я хочу создать программу, которая включает в себя динамические макеты элементов управления, похожие на веб-страницу.
У меня есть определенная кнопка, если вы нажмете на нее, она должна удалить все текущие элементы управления. который можно увидеть, и загрузить полный новый набор элементов управления с помощью второго InitializeComponent.
Вторая страница будет содержать кнопку «Назад», которая должна удалить второй набор. элементов управления и снова загрузите исходные элементы с помощью первого InitializeComponent, чтобы что у меня как бы есть две разные доступные «страницы».
Однако каждый раз, когда я переключаюсь с помощью кнопки и снова вызываю InitializeComponent, использование VRAM будет неуклонно увеличиваться, вероятно, потому что на самом деле он не «убивает» все предыдущие ресурсы с помощью Dispose.
Поэтому я хотел спросить, есть ли способ перезагрузить инициализированные элементы управления, которые были удалены, без необходимости их инициализации еще раз.
Заранее спасибо.
РЕДАКТИРОВАТЬ:
аа, неважно, я понял.
вместо .dispose я просто использую команду Controls.Remove, чтобы удалить текущий набор элементов управления при переходе на страницу 2.
Если я хочу вернуться назад, теперь я могу просто использовать команду Controls.Add для просмотра снова первый набор элементов управления, и использование VRAM не увеличение.
Это было невозможно с помощью Dispose, кто-нибудь хочет это объяснить? Я НАСТОЯЩИЙ новичок в csharp, начал несколько дней назад.
Подробнее здесь: https://stackoverflow.com/questions/776 ... oving-them
Как перезагрузить элементы управления после их удаления/удаления ⇐ C#
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение