簡體   English   中英

在C#中訪問Datagrid中的屬性

[英]Accessing a property in a Datagrid in C#

我正在將數據庫查詢的輸出加載到DataGrid。

myAdapter.Fill(ds,"AllInfo");
dataGridSearchOutput.DataSource = ds.Tables["AllInfo"].DefaultView;

它將用多個記錄填充數據網格控件。 假設數據記錄的主鍵是“ ID”。

現在我要生成報告。 為此,我需要選擇一個項目,然后單擊“生成報告”按鈕或雙擊一條記錄。 然后應為該ID生成報告。

我的問題是我應該如何獲取記錄的ID? 換句話說,我需要在datagrid中讀取選定的值。

您可以嘗試使用

dataGridView1.CurrentRow.Cells["ID"].Value

看一下

編輯:

然后也許看看使用DataGrid.CurrentRowIndex屬性

這樣行嗎? 將其放在事件處理程序中以進行單擊或雙擊...

DataView dv = (DataView)dataGridSearchOutput.DataSource;
DataRow selectedRow = dv.ToTable().Rows[dataGridSearchOutput.CurrentRowIndex];
long id = (long)selectedRow["ID"];

我認為最簡單和有效的方法是將GridView屬性DataKeyNames設置為ID,然后使用

int index = dataGridSearchOutput.SelectedIndex;
dataGridSearchOutput.DataKeys[index].Value.ToString()

或者您可以將其轉換為對象。

暫無
暫無

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

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