4

我创建了这个简单的演示,因为我在 WPF 中进行自动调整大小工作时遇到了一些麻烦。这是简单的代码:

<Window x:Class="UnderstandSizing.Window3"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
SizeToContent="WidthAndHeight"
ResizeMode="NoResize" >

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="Auto" />
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
        <RowDefinition Height="Auto" />
    </Grid.RowDefinitions>
    <TabControl Grid.Row="0" >
        <TabItem Header="CCCC" />
    </TabControl>        
    <Button Grid.Row="1" Content="Text" />
</Grid>
</Window>

由于网格将所有内容都设置为 Auto 并且窗口配置为 sizetocontent 我希望有 TabControl 和按钮,但窗口上没有其他内容,但上面有空格。看:

设计时间设计时

运行运行

我肯定错过了什么 ...

4

1 回答 1

4

看起来窗口有一个最小宽度,即使您打开调整大小,您也不能低于该宽度。这可能与顶部的按钮有关。如果您设置它WindowStyleToolWindow它将显示为正确的大小。有趣的是,如果您将其设置为None初始大小,它将与默认大小相同,但您可以将其调整为更小。

无论如何,你真的希望你的窗户这么小吗?如果您的宽度更大,则窗口将正确地贴合控件。

于 2012-02-01T16:44:11.823 回答