Один из способов избежать это установить AutoGenerateColumns
к False
(XAML, только приблизиться к).
Предоставьте свою коллекцию колонок и set width for last column
по номеру *
.
<DataGrid x:Name="dataGrid" IsReadOnly="True" AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding OrderId}" Header="OrderId"/>
<DataGridTextColumn Binding="{Binding ProductId}" Header="ProductId"/>
<DataGridTextColumn Binding="{Binding UnitPrice}" Header="UnitPrice"/>
<DataGridTextColumn Binding="{Binding Quantity}" Header="Quantity"/>
<DataGridTextColumn Binding="{Binding Discount}" Header="Discount"
Width="*"/>
</DataGrid.Columns>
</DataGrid>
Заменить привязки для столбцов соответствующими свойствами в классе модели. Вывод будет выглядеть следующим образом:
Однако, в случае, если вы хотите распространять доступное пространство одинаково для всех столбцов. Вы можете set width to * for all columns
. Вывод будет выглядеть следующим образом:
Если бы я тебя, я хотел бы добавить некоторые содержимое из связанного ресурса, на всякий случай, если это изменится в будущем. –