我有一个 DataGrid
,我想通过选择行而不是单元格来更改选定的项目。如下图所示,当我在单元格外单击时,项目不会更新。
<DataGrid x:Name="customerListBox" SelectedItem="{Binding SelectedCustomer, UpdateSourceTrigger=PropertyChanged}" SelectionMode="Single" IsReadOnly="True" ItemsSource="{Binding Customers}" Margin="10,57,10,10" AlternationCount="2" BorderThickness="1" SnapsToDevicePixels="True" AutoGenerateColumns="False" BorderBrush="Black" Foreground="Black">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Id}" Header="Id"/>
<DataGridTextColumn Binding="{Binding Name}" Header="Name"/>
<DataGridTextColumn Binding="{Binding Phone}" Header="Phone"/>
<DataGridTextColumn Binding="{Binding Email}" Header="Email"/>
</DataGrid.Columns>
</DataGrid>
我可以做的是将最后一列的宽度设置为
*
。但是这会使标题居中,并在宽屏显示器上显示时显得杂乱无序。<DataGridTextColumn Binding="{Binding Email}" Width="*" Header="Email"/>