读书人

单击鼠标选中数据,该如何解决

发布时间: 2012-08-15 16:57:16 作者: rapoo

单击鼠标选中数据
我想删除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
{

}
}

[解决办法]
DataGridView和DataTable的记录顺序有可能不一致。
这也和你绑定的方式有关。

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

既然你的行序号是由DataGridView获取的,
试试将

C# code
DataRow drow = myDataSet.Tables["Mark"].Rows[i];drow.Delete(); 

读书人网 >C#

热点推荐