【发布时间】:2015-11-13 19:47:56
【问题描述】:
我现在正在编写一个使用连接到 SQL 数据库的数据表的 C# 程序。我需要允许程序从程序和数据库中删除突出显示的行。现在我有一个关于按键删除的工作事件,它运行一个 SQL 命令来删除条目,但是,它删除了所有条目而不是选定的行(这是由于另一个问题)。基本上,我想知道如何返回当前突出显示的行。如果我可以返回那个号码,那么我可以继续我的程序。
例如,我在数据表的前 5 行中有数据,但我喜欢突出显示(通过单击)并删除第 3 行。如果我可以返回第三行,那么我可以根据一组不同的条件编写不同的 SQL 语句来处理。
谢谢。
【问题讨论】:
-
你的表架构是什么?你的删除查询是什么?使用一些唯一的 ID 来告诉您要删除的行(例如 autoincremenet、sequence 或 guid)。你为什么不使用一些 ORM 来为你做查询?
-
我认为大多数人会将 DataTable 绑定到某种网格并让其删除方法处理这些事情。我会给出建议,但你没有说是 winforms 还是 web forms 还是 mvc 或者你正在使用什么。 =)
-
你能在..中展示你正在这样做的事件吗?还有你为什么不能在
DataGrids's SelectedChanged事件var selectedIndex = YourDataGrid.SelectedRows[0].Index;上做这么简单的事情@ 谷歌在进行简单搜索时可以产生什么stackoverflow.com/questions/11260843/… -
Methodman:我可以通过多种方式解决我的问题。首先是将 Datagridview selectionmode 更改为 FullRowSelect。这就是我想问的,但不知道该怎么说。设置好之后,我使用您提供的参考来编写其余代码,它现在可以工作了。谢谢。