winform窗体中用DataGrid显示数据库的删除记录问题
问题:
winform窗体中用DataGrid显示数据库的删除记录问题。删除行数据前,如果对记录排过序,删除的实际记录就不能与DataGrid选中的当前记录对应。我是菜鸟,请大家帮忙。
代码:
//定义变量
private OleDbConnection myconn;
private OleDbDataAdapter da;
private DataSet ds=new DataSet();
//初始化
private void Form1_Load(object sender, System.EventArgs e)
{
myconn=new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=md.mdb");
da=new OleDbDataAdapter("SELECT * FROM MD",myconn);
da.Fill(ds,"md");
//在DataGrid中显示,也用过绑定的方法
dataGrid1.DataSource=ds.Tables["md"].DefaultView;
}
//按下删除按钮
private void button1_Click(object sender, System.EventArgs e)
{
int cur;
//命令生成器
OleDbCommandBuilder cust=new OleDbCommandBuilder(da);
//当前选中行号
cur=dataGrid1.CurrentRowIndex;
//删除当前表当前行
ds.Tables["md"].Rows[cur].Delete();
//更新
da.Update(ds,"md");
ds.AcceptChanges();
}