我有一个显示一些数据的WPF DataGrid。现在我想为某些特定列设置自动调整大小,而不是全部。这是我目前的DataGrid行为:
这是我的期望(列宽应符合其内容):
XAML
...
<DataGridTextColumn Binding="{Binding ShippingNumber}" Header="出荷No." ElementStyle="{DynamicResource TextAlignCenter}" IsReadOnly="True"/>
<DataGridTextColumn Binding="{Binding DivisionDisplay}" Header="区分" ElementStyle="{DynamicResource TextAlignCenter}" IsReadOnly="True"/>
<DataGridTextColumn Binding="{Binding ShippingDestinationCode}" Header="出荷先コード" ElementStyle="{DynamicResource TextAlignCenter}" IsReadOnly="True"/>
<DataGridTextColumn Width="Auto" Binding="{Binding ShippingDestinationNameDisplay}" Header="出荷先名" ElementStyle="{DynamicResource TextAlignCenter}" IsReadOnly="True"/>
<DataGridCheckBoxColumn Binding="{Binding IsCompletedStockOutcomming}" Header="出庫済み" IsReadOnly="True">
<DataGridCheckBoxColumn.ElementStyle>
<Style TargetType="CheckBox" BasedOn="{StaticResource {x:Type CheckBox}}">
<Setter Property="HorizontalAlignment" Value="Center"/>
<Setter Property="Margin" Value="0"/>
<Setter Property="IsHitTestVisible" Value="False"/>
<Setter Property="Focusable" Value="False"/>
</Style>
</DataGridCheckBoxColumn.ElementStyle>
</DataGridCheckBoxColumn>
我的项目正在应用MVVM指示灯模式,因此它不允许在ViewModel中将任何代码放在代码隐藏中。
我也设置With="Auto"
但仍然没用。任何人都可以帮助我使它有效吗?感谢。