我正在使用没有指定高度和宽度的TabControl。 实际上,TabControl的高度取当前选项卡的高度。
我不希望TabControl自动调整它的大小。我希望它采用最大标签的大小(高度和宽度)。
我该怎么做?
感谢。
答案 0 :(得分:7)
因为有些人要求实际的xaml,这里有一些对我有用的东西。它基于@FWillem,@ Floc和其他人的提示,所以所有的功劳归于他们。
<TabControl>
<TabItem Header="SomeTab1">
<Grid Name="MasterTabGrid">
<!-- Some content -->
</Grid>
</TabItem>
<TabItem Header="SomeTab2">
<Grid Height="{Binding ElementName=MasterTabGrid, Path=ActualHeight}" >
<!-- Some other content -->
</Grid>
</TabItem>
</TabControl>
答案 1 :(得分:-1)
TabControl
的大小将由其父容器控件设置,该容器控件负责其子容器的布局,并将为许多布局属性指定默认值。 / p>
例如,如果您将TabControl
置于(垂直)StackPanel
内,您会发现它需要最小的垂直空间。如果您的标签周围有Grid
,则会填充可用空间。
或者,您可以使用其他容器手动设置VerticalAlignment="Top"
,这通常会覆盖您看到的行为。 (很可能您的布局面板默认为Stretch
。)