Как автоматически изменить размер TabControl в DockPanel - WPF - PullRequest
2 голосов
/ 12 октября 2010

У меня есть простое приложение WPF Forms. У меня есть DockPanel в качестве моей корневой панели. Первый дочерний элемент - это StackPanel, в котором есть некоторые элементы управления, а второй - это TabControl. Что я хочу, и типы панелей могут изменить все, что они хотят, чтобы TabControl поддерживал размер заполнения окна, за исключением того, что потребляет первая StackPanel. Однако независимо от того, что я пробую, TabControl, похоже, меняет свой размер в зависимости от того, что внутри него, а не от того, что внутри.

<Window>
    <DockPanel>
        <StackPanel> </StackPanel>
        <TabControl> </TabControl>
    </DockPanel>
</Window>

1 Ответ

7 голосов
/ 12 октября 2010

Просто установите свойства HorizontalAlignment и VerticalAlignment вашего TabControl на «Растянуть»:

<DockPanel>
    <StackPanel DockPanel.Dock="Bottom" Orientation="Horizontal" Margin="5">
        <TextBlock Text="Hello" />
        <TextBlock Text="World" />
    </StackPanel>

    <TabControl HorizontalAlignment="Stretch" 
                VerticalAlignment="Stretch">
        <TabItem Header="Small">
            <TextBlock Text="Just Some Small Stuff" />
        </TabItem>
        <TabItem Header="Bigger">
            <StackPanel>
                <TextBlock Text="One line" />
                <TextBlock Text="The next line" />
            </StackPanel>
        </TabItem>

    </TabControl>
</DockPanel>
...