Лучший способ «переключаться» между двумя пользовательскими элементами управления на панели? - PullRequest
2 голосов
/ 29 февраля 2012

Я создал два отдельных UserControls и (в зависимости от того, какой RadioButton выбран), я бы хотел, чтобы один или другой был отображен.

Прямо сейчас я просто перетащил один экземпляр каждого UserControl на форму и поместил один поверх другого (установив один .Visible = false;).

Это нормально, но мне было интересно, есть ли лучший или более подходящий способ сделать это?

1 Ответ

4 голосов
/ 29 февраля 2012

Это вполне разумно.

Если вас беспокоит сохранение ресурсов, которые вы больше не используете, вы можете добавить Panel и добавить или удалить элемент управления оттуда.

* 1006 Е.Г. *

try
{
    panel.SuspendLayout();
    panel.Controls.Remove(userControl1);
    panel.Controls.Add(userControl2);
}
finally
{
    panel.ResumeLayout();
}

Если пользовательские элементы управления выполняют такие вещи, как подключение к источникам данных, вы можете захотеть их утилизировать и воссоздать. Действительно зависит от того, насколько сложны элементы управления. Если они просто захватывают несколько свойств, ваше текущее решение в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...