WPF删除Datagrid一行
点击事件
private void Del1_click(object sender, RoutedEventArgs e)
{
(Student)datagrid1.SelectedItem ;
if (stu != null)
{
MessageBox.Show(stu.id.ToString());
viewModel.Del(stu.id);
}
}
XAML代码
<DataGrid MouseDown="GridMouseDown" x:Name="datagrid1" AutoGenerateColumns="False" CanUserAddRows="False" Grid.Row="1" ItemsSource="{Binding GridModelList }" >
<DataGrid.Columns >
<DataGridTextColumn Width="*" IsReadOnly="True" Header="Id" Binding="{Binding Id}"></DataGridTextColumn>
<DataGridTextColumn Width="*" Header="name" Binding="{Binding Name}"></DataGridTextColumn>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Button Content="Del" Click="Del1_click"></Button>
<Button Content="Add" Click="Add1_click"></Button>
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
绑定的数据 ----》重点
Studentls = new List<Student>();
因为绑定的数据类型是List<Student>,所以最后获取的行是Student类型的
推测,如果绑定的类型是DataTable的,最后获取的行应该是DataRowView类型的