2011-04-05 150 views
4

如何從WPF DataGrid中讀取單元格值?如何從WPF DataGrid中讀取單元格中的值?

我在網上搜索,嘗試任何可能的組合,並沒有什麼作品:

Datagrid.Cells [..],DataGrid.Items.Cells [..],DataGrid.Rows ..,DataGrid.Items.Row .. 沒有用,我無法找到它是MSDN或我不明白它。我只需要從DataGrid中的單元格中讀取一個簡單的值。

怎麼辦?

回答

3
+0

從你的答案似乎我必須寫幫助器函數從DataGrid中獲取一個單元格值。我在我的DataGrid中有數百行和多列。爲了獲得所有的值,我必須循環遍歷所有行,並運行數百次輔助函數。有更快的方法嗎? – KMC 2011-04-05 09:32:33

+1

@KMC這取決於你想要做什麼。你爲什麼要循環遍歷所有單元格並獲取單元格中的數據?您可以簡單地將數據綁定用於您的代碼或viewmodel,然後循環您的集合。 – biju 2011-04-05 09:41:40

+0

我必須在DataGrid中選擇好數量的單元格並輸出到Excel工作表。這就是爲什麼我正在尋找一種更直觀的方式來做到這一點。我會重寫我的問題併發佈一個新問題。 – KMC 2011-04-05 09:46:47

1

這可能幫助別人。

foreach (DataRowView row in dgLista.SelectedItems) 
{ 
    string text = row.Row.ItemArray[index].ToString(); 
} 

祝你好運!

0

下面幫我:

Private Sub dgNames_MouseDoubleClick(sender As Object, e As MouseButtonEventArgs) Handles dgNames.MouseDoubleClick 

    Dim strCellContent as String = MessageBox.Show(TryCast(e.OriginalSource, TextBlock).Text) 

End Sub 
1

這裏是解決方案的概要。

WinForm的

類型:System.windows.Forms.DataGridView

// C# 
foreach (DataGridViewRow row in dataGridView1.Rows) 
{ 
    //"Column1" = column name in DataGridView 
    string text = row.Cells["Column1"].value.ToString(); 
} 

WPF相當於

類型:數據網格

// C# 
foreach (DataRowView row in dataGrid.Items) 
{ 
    string text = row.Row.ItemArray[index].ToString(); 
} 
相關問題