DataGridColumn не изменять размер - PullRequest
0 голосов
/ 27 апреля 2018

У меня есть DataGrid. После загрузки приложения столбец изменяет размер корректно. Я использую привязку для ширины DataGrid. Но изменить размер столбца окна не изменится, потому что DataGrid имеют фиксированную ширину.

Как правильно задать ширину, чтобы можно было изменить размер окна?

Мой код:

<Grid Name="gridForDataGridNames">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*"></ColumnDefinition>
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition MinHeight="240" Height="*"></RowDefinition>
    </Grid.RowDefinitions>

    <sdk:DataGrid AutoGenerateColumns="False"  x:Name="dataGridForNames"
                    Width="{Binding ElementName=gridForDataGridNames, Path=ActualWidth}"
                    Grid.Row="0" Grid.Column="0" HeadersVisibility="None"
                    ItemsSource="{Binding Path=Names}">

        <sdk:DataGrid.Columns>
            <sdk:DataGridTemplateColumn Header="Image" Width="*">
                <sdk:DataGridTemplateColumn.CellTemplate>
                    <DataTemplate>
                        <Button Content="{Binding LastName}"></Button>
                    </DataTemplate>
                </sdk:DataGridTemplateColumn.CellTemplate>
            </sdk:DataGridTemplateColumn>
        </sdk:DataGrid.Columns>
    </sdk:DataGrid>
</Grid>

1 Ответ

0 голосов
/ 03 августа 2018

Измените DataGrid, чтобы иметь MinWidth вместо Width. Это приведет к увеличению сетки при увеличении размера окна, но при уменьшении размера оставьте минимальную ширину, необходимую вам.

MinWidth="{Binding ElementName=gridForDataGridNames, Path=ActualWidth}"
...