Подтвердить что ты не робот

Как создать элемент управления вкладкой без заголовка заголовка в форме Windows?

Я создал форму Windows с помощью Tab Control, но с ней заголовок. Я хочу скрыть это. Я не могу это сделать, используя любые свойства Tab Control. Есть ли какое-либо свойство, определенное для скрытия заголовка вкладки для элемента управления Tab без прохождения кода?

4b9b3361

Ответ 1

Используйте следующий код, чтобы скрыть вкладки или установить эти свойства в дизайне.

    tabControl.Appearance = TabAppearance.FlatButtons;
    tabControl.ItemSize = new Size(0, 1);
    tabControl.SizeMode = TabSizeMode.Fixed;

Ответ 2

Вам нужны панели вкладок без функции, позволяющие пользователю переключаться между ними, поэтому я предполагаю, что вы хотите создать несколько отдельных наборов элементов управления, которые будут отображаться пользователю по одному за раз. Вы можете добиться этого несколькими способами (вы можете выбрать один из них, если найдете его в своем случае):

  • Используйте несколько элементов Panel вместо нескольких вкладок в TabControl, однако было бы трудно работать в дизайнере, потому что все элементы управления будут видны
  • Используйте разные Form вместо вкладок, чтобы разделить части макета. Это может быть нормально, но вы можете не использовать несколько Form s, поэтому это зависит от конкретного случая.

и, наконец, предлагаемое решение :

  • Инкапсулируйте каждый набор элементов управления в UserControl. Это позволяет хранить каждый макет отдельно, поэтому вы можете легко проектировать каждый из них, не мешая другим элементам управления;). Обработка кода каждой из макетов также будет разделена. Затем просто перетащите эти элементы управления в форму и используйте соответствующим образом их видимость, чтобы показать тот, который вам нужен.

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

Ответ 3

Это проще, как вы думаете, вы просто перетаскиваете верхнее окно панели, так что будет вне формы.

Ответ 4

Другим способом достижения того же (или подобного) является: вы можете удалить вкладки из коллекции TabControl.TabPages, а затем добавить вкладку, которую хотите показать.

Во время инициализации формы я удаляю вкладки (так что в конструктор я могу легко управлять ими) и в каком-то контрольном событии (при нажатии кнопки) я показываю вкладку, которую пользователь должен видеть.

Что-то вроде этого:

// During form load:
ctrTab.TabPages.Clear();

// ...... 

// During button click or some other event:
if(rbSend.Checked)
    ctrTab.TabPages.Add(pgSend);
else
    ctrTab.TabPages.Add(pgReceive);

Таким образом, пользователь все еще может видеть вкладку заголовка, но как название группы элементов управления, он не может изменять/переключать текущую активную вкладку.

Ответ 5

Используйте DrawMode: OwnerDrawFixed скроет текст заголовка TabPage DrawMode: OwnerDrawFixed