2

我有一个包含 3 个 DataGridTextColumns 的 DataGrid。我希望第一个占 40%,其他两个占 30%,基本上我需要它们来填充整个 DataGrid。

                    <Grid>
                        <DataGrid ItemsSource="{}" IsReadOnly="True">
                            <DataGrid.Columns>
                                <DataGridTextColumn Header="Item1" Binding="{Binding Path=Item1}" />
                                <DataGridTextColumn Header="Item2" Binding="{Binding Path=Item2}" />
                                <DataGridTextColumn Header="Item3" Binding="{Binding Path=Item3}" />
                            </DataGrid.Columns>
                        </DataGrid>
                    </Grid>
4

1 回答 1

9

使用相对宽度*,就像在常规Grid列宽设置中一样:

<DataGrid.Columns>
  <DataGridTextColumn Header="Item1" 
                      Binding="{Binding Path=Item1}" 
                      Width="4*"/>
  <DataGridTextColumn Header="Item2" 
                      Binding="{Binding Path=Item2}" 
                      Width="3*"/>
  <DataGridTextColumn Header="Item3" 
                      Binding="{Binding Path=Item3}" 
                      Width="3*"/>
</DataGrid.Columns>
于 2013-10-04T15:30:14.503 回答