2010-02-14 38 views
1

我正在將數據庫查詢的輸出加載到DataGrid中。在C中訪問Datagrid中的屬性#

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

它將填充具有多個記錄的數據網格控件。假設數據記錄的主鍵是「ID」。

現在我想要生成報告。要做到這一點,我需要選擇一個項目,然後點擊一個按鈕「生成報告」或雙擊一條記錄。然後應該爲該ID生成報告。

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

回答

0

這項工作?把它在點擊或雙擊該事件處理程序...

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

我認爲最簡單,投注方法設置GridView控件屬性的DataKeyNames到ID,然後你可以很容易地使用

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

或者您可以將它轉換爲對象。