3

我正在使用未指定高度和宽度的 TabControl。实际上,TabControl 的高度取当前选项卡的高度。

我不希望 TabControl 自动调整它的大小。我希望它采用最大标签的尺寸(高度和宽度)。

我怎样才能做到这一点 ?

谢谢。

4

2 回答 2

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>
于 2012-12-11T12:22:19.820 回答
-1

您的大小TabControl将由其父容器控件设置,该控件负责其子控件的布局,并将为许多布局属性指定默认值。

例如,如果您将TabControl内部放入 (vertical) StackPanel,您会发现它占用的垂直空间最小。如果您Grid的标签周围有一个,它们将填满可用空间。

或者,您可以手动设置VerticalAlignment="Top"其他容器,这通常会覆盖您看到的行为。(很可能您的布局面板将其默认为Stretch。)

于 2012-08-10T09:53:29.763 回答