Wpf 封边

Wpf 封边,wpf,xaml,layout,Wpf,Xaml,Layout,我用的是WPF的包装纸。问题是在它的右边有一个我想减少的空白,我不知道如何减少 在下面的图片中,你可以看到右边对左边的空白,我希望他们都像左边的那个 这是我的XAML: <Grid x:Name="root"> <Grid.ColumnDefinitions> <ColumnDefinition Width="263*" /> <ColumnDefinition Width="240*" /> &

我用的是WPF的包装纸。问题是在它的右边有一个我想减少的空白,我不知道如何减少

在下面的图片中,你可以看到右边对左边的空白,我希望他们都像左边的那个

这是我的XAML:

 <Grid x:Name="root">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="263*" />
        <ColumnDefinition Width="240*" />
    </Grid.ColumnDefinitions>
    <Rectangle Fill="LightBlue"/>
    <WrapPanel >
        <Rectangle Margin="10" Fill="Red" Width="40" Height="40"></Rectangle>
        <Rectangle Margin="10" Fill="Red" Width="40" Height="40"></Rectangle>
        <Rectangle Margin="10" Fill="Red" Width="40" Height="40"></Rectangle>
        <Rectangle Margin="10" Fill="Red" Width="40" Height="40"></Rectangle>
        <Rectangle Margin="10" Fill="Red" Width="40" Height="40"></Rectangle>
        <Rectangle Margin="10" Fill="Red" Width="40" Height="40"></Rectangle>
    </WrapPanel>
</Grid>

您似乎忘记了将
列中的
包装纸
居中。像这样:

<Grid x:Name="root">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="263*" />
        <ColumnDefinition Width="240*" />
    </Grid.ColumnDefinitions>
    <Rectangle Fill="LightBlue"/>
    <WrapPanel HorizontalAlignment="Center">
        <Rectangle Margin="10" Fill="Red" Width="40" Height="40"></Rectangle>
        <Rectangle Margin="10" Fill="Red" Width="40" Height="40"></Rectangle>
        <Rectangle Margin="10" Fill="Red" Width="40" Height="40"></Rectangle>
        <Rectangle Margin="10" Fill="Red" Width="40" Height="40"></Rectangle>
        <Rectangle Margin="10" Fill="Red" Width="40" Height="40"></Rectangle>
        <Rectangle Margin="10" Fill="Red" Width="40" Height="40"></Rectangle>
    </WrapPanel>
</Grid>

您在最后得到了很大的空间,因为它只能在您指定的空间中容纳这么多的正方形。它无法将最后一个正方形与第一行完全对齐,因此它将其包裹起来。右边的那块空间只是额外的“死”空间

另一件你可以用包装纸做的事情是指定物品的大小。你会发现我使用了ItemHeight和ItemWidth属性,这让我可以更好地控制它的大小

 <Grid x:Name="LayoutRoot">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="263*" />
                <ColumnDefinition Width="280*" />
            </Grid.ColumnDefinitions>
            <Rectangle Fill="LightBlue"/>
            <WrapPanel ItemHeight="60" ItemWidth="60" >
                <Rectangle Margin="5" Fill="Red" Width="60" Height="60"></Rectangle>
               <Rectangle Margin="5" Fill="Red" Width="60" Height="60"></Rectangle>
               <Rectangle Margin="5" Fill="Red" Width="60" Height="60"></Rectangle>
               <Rectangle Margin="5" Fill="Red" Width="60" Height="60"></Rectangle>
               <Rectangle Margin="5" Fill="Red" Width="60" Height="60"></Rectangle>
               <Rectangle Margin="5" Fill="Red" Width="60" Height="60"></Rectangle>
            </WrapPanel>
            </Grid>