我在窗體上有一個單選按鈕,一個gridview和一個按鈕。這裏是我的datagridview selection_changed
代碼示例:DataGridView選擇更改事件並從數據庫中刪除選定的行
private void DataGridView1_SelectionChanged(object sender, EventArgs e)
{
if (rdb_Delete.Checked)
{
lbl_deleteMsg.Text = DataGridView1.SelectedRows.Count.ToString()
+ " rows selected.";
}
}
我想從數據庫中刪除選定的行和刷新的datagridview當用戶按下刪除按鈕。 我在我的數據庫中有一個Id列,但是我沒有在datagridview上將它顯示給用戶。
所以通過SQL查詢如何從我的數據庫中刪除選定的行?這裏是我的刪除按鈕點擊代碼,但它似乎並不工作(因爲選擇改變事件):
private void btn_Delete_Click(object sender, EventArgs e)
{
if (rdb_Delete.Checked)
{
int count = DataGridView1.SelectedRows.Count;
int length = DataGridView1.RowCount;
if (!count.Equals(0))
{
if (confirm())
{
for (int i = 0; i < length; i++)
{
if (DataGridView1.Rows[i].Selected)
{
//DataGridView1.SelectedRows[i].Selected = false;
DataGridView1.Rows.RemoveAt(i);
i--;
}
}
}
}
}
}
編輯:我還發現一個小的回答也許可以幫助別人在這種情況下。 DataGridView中的任何一列可以可見=假所以它會被程序代碼所訪問,如:
int rowID = int.Parse(DataGridView1[0, selectedIndex].Value.ToString());
看看這裏http://stackoverflow.com/questions/5539243/how -to-delete-a-selected-row-from-datagridview-and-database它可能會幫助你.. –