автоматическое управление размерами в TabPages - PullRequest
3 голосов
/ 10 февраля 2009

У меня есть TabControl, состоящий из нескольких страниц TabPages. Одна из этих вкладок содержит TreeView, а другая содержит DataGridView. Я хотел бы, чтобы эти элементы управления (и вкладки) автоматически меняли размер до максимально допустимого размера в TabControl без прокрутки.

DataGridView содержит свойство AutoSize, унаследованное от Control, которое очищает элемент управления, если оно включено. TreeView не имеет этого свойства. Я попытался установить размер, равный TabControl.Size, но это не учитывает границы и высоту панели вкладок.

treeView.Size = new Size(tabControl.Size.Width - SystemInformation.Border3DSize.Width * 2, tabControl.Size.Height - SystemInformation.Border3DSize.Height * 2);

У меня вопрос: как определить высоту кнопок вкладок или как автоматически заполнить вкладки до их максимального размера одним элементом управления?

1 Ответ

7 голосов
/ 10 февраля 2009

Собственность, которую вы ищете, называется Док .

Возможно, вы хотите установить его на DockStyle.Fill в TreeView и DataGridView.

В качестве альтернативы можно установить для свойства Anchor значение AnchorStyle.Top, AnchorStyle.Left, AnchorStyle.Right и AnchorStyle.Bottom (объединить с двоичным ИЛИ символом трубы '|'). Для этого вам нужно установить размер дочерних элементов ClientSize

...