изменить размер сетки WPF, когда окно развернуто до тех же порций, что и окно - PullRequest
4 голосов
/ 22 декабря 2011

У меня есть базовая сетка в моем приложении WPF:

<Grid>
    <Grid Height="260" HorizontalAlignment="Left" Margin="24,25,0,0" Name="grid1" VerticalAlignment="Top" Width="452">
        <Border BorderBrush="Red" BorderThickness="6"></Border>  
    </Grid>
</Grid>

сетка находится в середине окна.Когда я максимизирую окно, я хочу, чтобы сетка автоматически меняла размер до размера окна и оставалась с тем же полем, которое я указал.

Как мне это сделать?Должен ли я рассчитывать и изменять размер всего этого события в событии изменения размера?

я получаю из этого:

enter image description here

до этого (я не хочу этого):

enter image description here

Я хочу, чтобы сетка изменила размеры до тех же порций, что и была, но для полного экрана.

Ответы [ 2 ]

9 голосов
/ 22 декабря 2011

Удалить ширину и высоту.

<Grid>
    <Grid Margin="24,25">
        <Border BorderBrush="Red" BorderThickness="6"></Border>  
    </Grid>
</Grid>

e: Добавлена ​​вторая сетка, чтобы сделать ее идентичной OP

0 голосов
/ 22 декабря 2011

Вы можете разместить Grid внутри другого Grid с чем-то вроде:

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="25" />
        <RowDefinition />
        <RowDefinition Height="25" />
    </Grid.RowDefinitions>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="25" />
        <ColumnDefinition />
        <ColumnDefinition Width="25" />
    </Grid.ColumnDefinitions>

    <!-- Main Grid -->
    <Grid Grid.Row="1" Grid.Column="1">

        <!-- Main Content -->
    </Grid>
</Grid>

Это позволит вам поместить весь ваш контент внутрь Main Grid, сохраняя при этом постоянное поле25 вокруг всех краев.

...