У меня есть динамическая сетка данных с именем Matrix.

Высота этой сетки данных, не знаю почему, всегда равна 500.

У меня есть сетка для всех элементов управления на моей странице:

  <Grid.RowDefinitions>
            <RowDefinition Height="45"/>
            <RowDefinition Height="70"/>
            <RowDefinition Height="*"/>
            <RowDefinition Height="20"/>
        </Grid.RowDefinitions>

Третья строка — это датагрид.

Вот как я делаю свою сетку данных:

      <DataGrid Name="matrix" 
    HorizontalAlignment="Stretch" 
    ColumnWidth="*" 
    HorizontalContentAlignment="Stretch" 
    ColumnHeaderStyle="{StaticResource MyDataGridStyleHeader}"
 RowHeaderStyle="{StaticResource MyDataGridStyleRowHeader}"/>

Я уже пытался поставить это:

VerticalAlignment="Stretch" VerticalContentAlignment="Stretch"

Но мой DataGrid всегда одного размера.

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

0
user12119413 23 Окт 2019 в 11:33
У вас есть весь код, но вы не можете найти причину. как вы ожидаете, что люди найдут его без кода?
 – 
ASh
23 Окт 2019 в 11:35

1 ответ

Кажется, он работает нормально с деталями, которые вы предоставили. И я надеюсь, что вы также предоставили сопоставление Grid.Row с Datagrid (поскольку я не вижу его в опубликованном коде).

<Grid>
    <Grid.RowDefinitions>
        <RowDefinition Height="45"/>
        <RowDefinition Height="70"/>
        <RowDefinition Height="*"/>
        <RowDefinition Height="20"/>
    </Grid.RowDefinitions>
    <Label Content="Row 0" Grid.Row="0"/>
    <Label Content="Row 1" Grid.Row="1"/>
    <DataGrid Name="matrix" Grid.Row="2"
        HorizontalAlignment="Stretch" 
        ColumnWidth="*" 
        HorizontalContentAlignment="Stretch" />
    <Label Content="Row 3" Grid.Row="3"/>
</Grid>
0
Alfred Manoj 23 Окт 2019 в 14:54