C#-BindingSource删除当前
我有一个c#windows窗体应用程序,它有一个连接到sql server视图的DataGridView和一些连接到sql server表的文本框。 现在我想从DataGridView中删除一个项,但是当我使用C#-BindingSource删除当前,c#,C#,我有一个c#windows窗体应用程序,它有一个连接到sql server视图的DataGridView和一些连接到sql server表的文本框。 现在我想从DataGridView中删除一个项,但是当我使用 tbl_BindingSource.RemoveCurrent(); 它将删除我添加到数据库中的最后一项,而不是选定项。 如何从DataGridView中删除所选项目? 请帮忙 tbl_BindingSource.RemoveCurrent(); tbl_TableAdapter.Up
tbl_BindingSource.RemoveCurrent();
它将删除我添加到数据库中的最后一项,而不是选定项。
如何从DataGridView中删除所选项目?
请帮忙
tbl_BindingSource.RemoveCurrent();
tbl_TableAdapter.Update(ds.tbl);
view_showTableAdapter.Fill(ds.view_show);
view_showDataGridView.Refresh();
编辑:
我找不到使用BindingSource进行删除的方法。
所以我用了这个:
DSet.tbl_Row row = ds.tbl.FindById
(view_showDataGridView.SelectedRows[0].Cells[0].Value.ToString());
int indexRow = ds.tbl.Rows.IndexOf(row);
ds.tbl.Rows[indexRow].Delete();
tbl_TableAdapter.Update(ds.tbl);
view_showTableAdapter.Fill(ds.view_show);
view_showDataGridView.Refresh();
如果在调用
RemoveCurrent()
之前查看Current
属性,会显示什么?感谢您的建议。我使用了MessageBox.show(tbl_cdBindingSource.Current.ToString());它显示了System.Data.DataRowView我建议使用调试器进行查看,这样您就可以看到DataRowView
中的内容。(或者你可以从中记录一个特定的值。)关键是看Current
是否引用了你希望删除的选定值。很抱歉,我是C#的新手。现在我为行has current设置了一个断点,我看到选中的行是我添加到数据库的最后一行,而不是选中的行,所以这似乎是目前需要重点关注的事情-我自己对数据绑定不太了解,但您应该研究如何将“当前”行设置为“选中”行。您可能需要在某处设置一个属性。