2015-11-13 76 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(); 
}