xaml
<DataGrid ItemsSource="{Binding BeePCProducts}" Name="dataGrid" CanUserAddRows="False" AutoGenerateColumns="False" >
<!-- 设置Header居中 -->
<DataGrid.ColumnHeaderStyle>
<Style TargetType="DataGridColumnHeader">
<Setter Property="HorizontalContentAlignment" Value="Center">
</Setter>
</Style>
</DataGrid.ColumnHeaderStyle>
<DataGrid.Columns>
<DataGridTextColumn IsReadOnly="True" Header="列1" Width="1*" Binding="{Binding col1}" />
<DataGridTextColumn IsReadOnly="True" Header="列2" Width="3*" Binding="{Binding col2}"/>
<DataGridTemplateColumn x:Name="UserAction" Header="操作" Width="100">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Button x:Name="BtnAction" Content="删除"
Command="{Binding DataContext.DelProduct, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=DataGrid}}"
CommandParameter="{Binding }"
HorizontalContentAlignment="Center" VerticalContentAlignment="Center">
</Button>
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
CanUserAddRows=“False” 去除空白行
AutoGenerateColumns=“False” 不自动生成列(本身会根据Model自动生成列,设置成 false 规避下 )
Command="{Binding DataContext.DelProduct, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=DataGrid}}" 绑定这里 需要 DataContext.XXX 不然好像是 dataGrid.ItemSource 里面找
CommandParameter="{Binding } 参数这里 绑定当前行的话 就直接 {binding }
转载注明 https://blog.csdn.net/QQ157596462/article/details/93594217