单击鼠标选中数据

slowly0321 2012-05-08 10:01:04
我想删除GridView中单击选中的行,下面的代码对吗?为什么每次删除的都不是选中的行?
private static int rowIndex = 1;
private void Data_GridView_CellEnter(object sender, DataGridViewCellEventArgs e)
{

rowIndex = e.RowIndex;
//Data_GridView.
}

int i = rowIndex;

private void btn_dele_Click(object sender, EventArgs e)
{
try
{
SqlDataAdapter myDataAdapter = new SqlDataAdapter(sql, conn);
SqlCommandBuilder myBuillder = new SqlCommandBuilder(myDataAdapter);
DataRow drow = myDataSet.Tables["Mark"].Rows[i];
drow.Delete();
myDataAdapter.Update(myDataSet, "Mark");
conn.Close();
Console.ReadLine();

}
catch
{

}
}
...全文
57 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
xky96 2012-05-08
  • 打赏
  • 举报
回复
DataGridView和DataTable的记录顺序有可能不一致。
这也和你绑定的方式有关。

不用直接删记录,你可以设断点观察一下:
Data_GridView.Rows[i]和myDataSet.Tables["Mark"].Rows[i]应该是不一样的。

既然你的行序号是由DataGridView获取的,
试试将
DataRow drow = myDataSet.Tables["Mark"].Rows[i];
drow.Delete();

替换成
Data_GridView.Rows.RemoveAt(i);

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧