Это вопрос .net winform UI.
Во многих случаях мы хотим спроектировать пользовательский интерфейс таким образом, чтобы у вас было несколько вариантов, и в зависимости от выбранного вами варианта, для вас настроен другой подробный пользовательский интерфейс. Например, представьте себе регистрацию пользователя: в зависимости от выбранного вами местоположения вас могут попросить ввести другую информацию. Обычно, когда я создаю форму для такой цели, я создаю пустую панель для размещения места на главной форме. И я создам один пользовательский элемент управления для каждого пользовательского интерфейса. Когда форма будет загружена, я создам экземпляры пользовательских элементов управления (представляющих подробный пользовательский интерфейс на основе параметров), закреплю их на панели и скрою ненужные элементы. Когда пользователь меняет свою опцию (возможно, через выпадающий список или через набор переключателей), я программно решаю, какой пользовательский элемент управления должен отображаться, а остальные должны быть скрыты. Пока все хорошо.
Но у этого решения есть проблема: когда вы открываете форму в конструкторе форм VS, все, что вы видите, это пустая панель, и вы не представляете, как будет выглядеть заполненный пользовательский элемент управления. Если другой программист откроет вашу форма у дизайнера, он не будет знать, что здесь происходит, пустая панель? Затем он должен перейти к вашему коду и узнать пользовательские элементы управления.
Итак, у нас есть пользовательский элемент управления, который ведет себя подобно tabcontrol, так что все пользовательские элементы управления могут быть визуально организованы в конструкторе во время разработки? Конечно, вы скажете, тогда используйте tabcontrol. Но очевидно, что цель не та же, что у tabcontrol, а скорее tabcontrol без кнопок вкладок сверху. Вы можете попросить меня написать несколько строк кода, чтобы скрыть кнопки вкладок на вкладке управления. Да, мы можем это сделать, но я обнаружил, что после скрытия кнопок вкладок, вокруг элемента управления вкладками и других элементов управления будет некоторое пространство, и внешний вид будет не идеальным. И визуально кнопки вкладок занимают больше места, чем сами вкладки, поэтому их скрытие создаст некоторую проблему с полями макета.
Существует ли пользовательский элемент управления, разработанный кем-то, который достигает моей цели? Я имею в виду, давай, это обычная проблема, и я не верю, что все оставляют пустую панель в форме. Должно быть какое-то лучшее решение. И мне нужна твоя помощь. Спасибо.