Xaml 控件超出窗口

Xaml 控件超出窗口,xaml,uwp,Xaml,Uwp,我试图创建一个信息页面,但当我看到一个成品时,会发生以下情况: 因此,正如您可以看到电影海报和描述一样,开始时很好,但是当用户尝试使用不同于默认大小的大小时,它不会调整大小,以便用户可以看到相同的信息 代码: 简言之,我如何保持设计,但当窗口改变大小时,图像和文本的大小将保持在窗口内并保持可见 控件超出窗口 问题是,当将根面板设置为StackPanel时,子元素的大小将是固定的。而且它不会随着窗口大小的改变而改变。为了解决这个问题,您可以尝试使用网格替换。请参考以下xaml布局 <Grid

我试图创建一个信息页面,但当我看到一个成品时,会发生以下情况:

因此,正如您可以看到电影海报和描述一样,开始时很好,但是当用户尝试使用不同于默认大小的大小时,它不会调整大小,以便用户可以看到相同的信息

代码:

简言之,我如何保持设计,但当窗口改变大小时,图像和文本的大小将保持在窗口内并保持可见

控件超出窗口

问题是,当将根面板设置为StackPanel时,子元素的大小将是固定的。而且它不会随着窗口大小的改变而改变。为了解决这个问题,您可以尝试使用网格替换。请参考以下xaml布局

<Grid>
    <Image
        Name="Backdrop"
        HorizontalAlignment="Center"
        VerticalAlignment="Center"
        Source="Assets/hello.jpg"
        Stretch="UniformToFill"
        />
    <Grid Background="{ThemeResource SystemControlAcrylicElementBrush}">
        <Grid Margin="80" >
            <Grid.RowDefinitions>
                <RowDefinition Height="*" />
                <RowDefinition Height="9*" />
            </Grid.RowDefinitions>
            <StackPanel Orientation="Horizontal">
                <Button Click="ButtonBase_OnClick">
                    <SymbolIcon Symbol="Back" />
                </Button>
                <TextBlock
                    Margin="20,0,0,0"
                    VerticalAlignment="Center"
                    Style="{StaticResource TitleTextBlockStyle}"
                    Text="Grid Test Page"
                    />
            </StackPanel>

            <Border
                Margin="0,10,0,10"
                VerticalAlignment="Bottom"
                BorderBrush="Gray"
                BorderThickness="1"
                />

            <Grid
                Grid.Row="1"
                Margin="0,20,0,0"
                HorizontalAlignment="Center"
                VerticalAlignment="Top"
                >
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="*" />
                    <ColumnDefinition Width="*" />
                </Grid.ColumnDefinitions>

                <Grid>
                    <Image
                        Name="Poster"
                        MinWidth="200"
                        MaxWidth="500"
                        Margin="10"
                        Source="Assets/hello.jpg"                  
                        />

                    <Button
                        Width="100"
                        Height="100"
                        HorizontalAlignment="Center"
                        VerticalAlignment="Center"
                        Background="{ThemeResource SystemControlAcrylicElementBrush}"
                        CornerRadius="100"
                        >
                        <Viewbox MaxWidth="60" MaxHeight="60">
                            <SymbolIcon Foreground="Gray" Symbol="Play" />
                        </Viewbox>
                    </Button>
                </Grid>
                <StackPanel
                    Grid.Column="1"
                    MinWidth="300"
                    MaxWidth="600"
                    Padding="20"
                    >
                    <TextBlock Text="Information" />
                    <Border
                        Margin="0,10,0,10"
                        VerticalAlignment="Bottom"
                        BorderBrush="Gray"
                        BorderThickness="1"
                        />
                    <TextBlock Text="Defines a flexible grid area that consists of columns and rows. Child elements of the Grid are measured and arranged according to their row/column assignments (set by using Grid.Row and Grid.Column attached properties) and other logic." TextWrapping="WrapWholeWords" />
                </StackPanel>
            </Grid>
        </Grid>
    </Grid>
</Grid>

非常感谢,一切都很好:
<Grid>
    <Image
        Name="Backdrop"
        HorizontalAlignment="Center"
        VerticalAlignment="Center"
        Source="Assets/hello.jpg"
        Stretch="UniformToFill"
        />
    <Grid Background="{ThemeResource SystemControlAcrylicElementBrush}">
        <Grid Margin="80" >
            <Grid.RowDefinitions>
                <RowDefinition Height="*" />
                <RowDefinition Height="9*" />
            </Grid.RowDefinitions>
            <StackPanel Orientation="Horizontal">
                <Button Click="ButtonBase_OnClick">
                    <SymbolIcon Symbol="Back" />
                </Button>
                <TextBlock
                    Margin="20,0,0,0"
                    VerticalAlignment="Center"
                    Style="{StaticResource TitleTextBlockStyle}"
                    Text="Grid Test Page"
                    />
            </StackPanel>

            <Border
                Margin="0,10,0,10"
                VerticalAlignment="Bottom"
                BorderBrush="Gray"
                BorderThickness="1"
                />

            <Grid
                Grid.Row="1"
                Margin="0,20,0,0"
                HorizontalAlignment="Center"
                VerticalAlignment="Top"
                >
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="*" />
                    <ColumnDefinition Width="*" />
                </Grid.ColumnDefinitions>

                <Grid>
                    <Image
                        Name="Poster"
                        MinWidth="200"
                        MaxWidth="500"
                        Margin="10"
                        Source="Assets/hello.jpg"                  
                        />

                    <Button
                        Width="100"
                        Height="100"
                        HorizontalAlignment="Center"
                        VerticalAlignment="Center"
                        Background="{ThemeResource SystemControlAcrylicElementBrush}"
                        CornerRadius="100"
                        >
                        <Viewbox MaxWidth="60" MaxHeight="60">
                            <SymbolIcon Foreground="Gray" Symbol="Play" />
                        </Viewbox>
                    </Button>
                </Grid>
                <StackPanel
                    Grid.Column="1"
                    MinWidth="300"
                    MaxWidth="600"
                    Padding="20"
                    >
                    <TextBlock Text="Information" />
                    <Border
                        Margin="0,10,0,10"
                        VerticalAlignment="Bottom"
                        BorderBrush="Gray"
                        BorderThickness="1"
                        />
                    <TextBlock Text="Defines a flexible grid area that consists of columns and rows. Child elements of the Grid are measured and arranged according to their row/column assignments (set by using Grid.Row and Grid.Column attached properties) and other logic." TextWrapping="WrapWholeWords" />
                </StackPanel>
            </Grid>
        </Grid>
    </Grid>
</Grid>