网格列内的控件不要与列的大小相关

时间:2015-01-19 19:53:49

标签: c# xaml windows-phone-8 layout windows-phone-8.1

所以,我有一个Windows Phone 8.1应用程序(Windows Store样式),我正在尝试制作一个简单的3列布局。虽然我在网格的较小列中放置的控件不符合列的宽度,但我遇到了问题。相反,控件将是一些(我假设)默认大小太大,除非我手动指定我想要控件的宽度。我不想指定像素,因为我希望这可以轻松地在不同的屏幕尺寸上工作。

我的XAML代码:

   <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="0.15*" />
            <ColumnDefinition Width="0.70*" />
            <ColumnDefinition Width ="0.15*" />
        </Grid.ColumnDefinitions>
        <Button Grid.Column="0" Content="A" HorizontalAlignment="Left" Height="Auto" VerticalAlignment="Stretch" FontFamily="Global User Interface" FontSize="40" Width="auto"/>
        <TextBlock Grid.Column="1" HorizontalAlignment="Stretch" TextWrapping="Wrap" Text="B" VerticalAlignment="Center" Height="576" Width="Auto"  TextAlignment="Center" FontSize="206"  />
        <Button Grid.Column="2" Content="C" HorizontalAlignment="Right" VerticalAlignment="Bottom" FontFamily="Global User Interface" FontSize="40" Height="640" Width="auto"/>
    </Grid>

屏幕截图显示超出网格列线的溢出“C”按钮

enter image description here

有趣的是,使用这个完全相同的XAML代码并将其放入Windows Phone 8.1 Silverlight应用程序中会导致它按照我预期的那样控制适合网格

编辑:实际上,即使以像素为单位设置宽度也没有效果......呃?

1 个答案:

答案 0 :(得分:3)

在每个按钮上设置MinWidth="0"