【发布时间】:2023-03-16 21:52:01
【问题描述】:
我尝试了许多解决方案,声明只删除了一行,但在我的 VS2017 C# 中,从所选行到 DataGridView 末尾的所有行都被删除。如果我有 5 行并删除了第 4 行,则第 4 行和第 5 行都将被删除。我可以毫无问题地添加行,我可以删除表并创建表,但删除单行数据似乎不可行。
请帮忙,我已经在这几天了......
private void DDataTable_UserDeletedRow( object sender, DataGridViewRowEventArgs e )
{
try
{
// Want the last operation to be completed
dbDataSetBindingSource.EndEdit();
//dbTableAdapter.Update( dbDataSet );
if ( selectedCellRow > 0 )
{
DataRowView drv = ( DataRowView )dbDataSetBindingSource.Current;
DataRow drToDelete = drv.Row;
dbDataSet.MyTable.Rows.Remove( drToDelete );
// This removed all remaining rows
// DDataTable.Rows.Remove( this.DDataTable.SelectedRows[ 0 ] );
// This removed all remaining rows
// dbDataSetBindingSource.RemoveCurrent();
// This gave an error "Can't remove items not in the list?
// dbDataSetBindingSource.Remove( selectedRowStr );
dbDataSetBindingSource.EndEdit();
dTableAdapter.Update(dbDataSet);
}
else
MessageBox.Show( "Error in delete row, bad index." );
}
catch (Exception ex)
{
// CancelEventArgs myE = new CancelEventArgs();
// DDataTable_Validating( sender, myE );
string myStr = "Error in deleting row\n" + ex.Message;
MessageBox.Show( myStr, "User Delete a Row" );
}
}
【问题讨论】:
标签: c# sql datagridview