拉伸网格到窗口大小

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了拉伸网格到窗口大小相关的知识,希望对你有一定的参考价值。

我刚开始用一个基本的空项目学习C#WPF,我想制作一个带有背景图像的网格,它正好在窗口上延伸。

现在的方式,网格延伸,但不是我想要的方式。例如我的背景图像是1000x1000px,我的窗口大小是1700x1200px,因此网格延伸到1200x1200px(它保持图像的宽高比。我不想要这个,我希望它只是伸展整个窗口。

这是我的代码:

<Window x:Class="Backgammon.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="auto" Width="auto">
<Grid VerticalAlignment="Stretch">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="auto" MinWidth="510" />
    </Grid.ColumnDefinitions>
    <Image Source="C:UsersEdyPicturescool-wallpapers1.jpg" Stretch="UniformToFill" HorizontalAlignment="Left"></Image>
    <Button Height="33" HorizontalAlignment="Right" Margin="0,0,12,12" Name="button1" VerticalAlignment="Bottom" Width="145" Click="button1_Click" ClipToBounds="False">Connect</Button>
    <ListBox Margin="12,12,0,149" Name="listBox1" HorizontalAlignment="Left" Width="225" />
</Grid>

任何帮助都会很棒,谢谢。

答案

尝试

<Grid Width="{Binding ActualWidth, 
              RelativeSource = {RelativeSource AncestorType = {x:Type Window}}}" 
      Height="{Binding ActualHeight, 
              RelativeSource ={RelativeSource AncestorType = {x:Type Window}}}">
另一答案

明白了。是<Grid.ColumnDefinitions>为我搞砸了事情。删除它,它工作:)

以上是关于拉伸网格到窗口大小的主要内容,如果未能解决你的问题,请参考以下文章

从定义了宽度和高度的代码中拉伸网格

VisualBrush大小和拉伸问题

如何在 tkinter 中创建一个自调整大小的按钮网格?

SVG - 在响应线条中拉伸的圆圈

无法在tkinter上使用网格调整树视图大小

OPENGL如何在改变窗口大小时,使自己的图形不被拉伸保持自己的纵横比,把原理也解释下,不要只给代码