簡體   English   中英

是否可以通過雙擊未綁定的DataGridView中的單元格來打開DataSet記錄?

[英]Can I open a DataSet record by double-clicking a cell in an unbound DataGridView?

我有一個未綁定的DataGridView ,用於顯示數據庫搜索結果。 這些行以編程方式放置。 我將DataGridView對象設置為“只讀”,但是如果有人雙擊行中的一個單元格,我想在新的Windows Form打開原始記錄進行編輯。 我知道觸發該事件的事件是dataGridView1_CellContentDoubleClick ,但是由於dataGridView1是未綁定的,所以我不確定下一步該怎么做。

有沒有一種方法可以從object senderEventArgs e獲取主鍵? 我可以從e獲取RowIndex ,但這與主鍵不同,因為(我認為)它將引用DataGridView中的行索引。

就像克里斯在下面的評論中說的那樣,要填充SelectedRows屬性,您需要設置

dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect

否則,您在DataGridViewCellEventArgs e擁有的ColumnIndex就是被雙擊的列的ColumnIndex

設置選擇模式后,您可以執行以下操作:

public void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
    // sender is just dataGridView1 btw..
    var selectedRow = dataGridView1.SelectedRows[0];
    var primaryKey = selectedRow.Cells["primaryKeyColumnName"].Value;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM