我有一个简单的WPF Forms应用程序。我有一个DockPanel作为我的根面板。第一个子节点是StackPanel,其中包含一些控件,然后第二个控件是TabControl。我想要的,面板类型可以改变他们想要的只是TabControl保持窗口的填充大小,除了第一个StackPanel消耗的内容。然而,无论我尝试什么,TabControl似乎都会改变它的大小,具体取决于它内部的内容,而不是它内部的内容。
<Window>
<DockPanel>
<StackPanel> </StackPanel>
<TabControl> </TabControl>
</DockPanel>
</Window>
答案 0 :(得分:7)
只需将TabControl的HorizontalAlignment和VerticalAlignment属性设置为“Stretch”:
<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>