2015-11-13 78 views
0

我正在编写一个C#程序,该程序使用连接到SQL数据库的数据表。我需要允许程序从程序和数据库中删除突出显示的行。现在我有一个按键删除的工作事件,它运行一个SQL命令来删除条目,但是,它删除了所有条目而不是选定的行(这是由于不同的问题)。基本上,我想知道如何返回当前突出显示的行。如果我可以返回这个数字,那么我可以继续我的程序。获取突出显示的数据表行的行号c#

例如,我在数据表的前5行中有数据,但是id想突出显示(通过单击)并删除第3行。如果我可以返回第三行,那么我可以编写一个不同的SQL语句来处理基于不同的一组条件。

谢谢。

+2

什么是你的表模式?你的删除查询是什么?使用一些唯一的ID来告诉你要删除的行(例如autoincremenet,sequence或guid)。你为什么不使用一些会为你查询的ORM? –

+0

我想大多数人会将DataTable绑定到某种网格,并让其delete方法处理这些事情。我会给出建议,但你没有说如果WinForms或Web窗体或MVC或你正在使用。 =) – Nikki9696

+0

你可以在..中显示你正在做这件事吗?你怎么也不能在DataGrids的SelectedChanged事件上做这么简单的事情 var selectedIndex = YourDataGrid.SelectedRows [0] .Index; stackoverflow.com/questions/11260843/getting-data-from-selected-datagridview-row-and-which-event – MethodMan

回答

1

假设你使用Bindingsource将数据加载到Datagridview

if(myBindingSource.Current != null) 
{ 
    myBindingSource.RemoveCurrent(); 
    myBindingSource.EndEdit(); 
}