2011-12-11 74 views
4

獲取行我試圖讓行這樣的:在數據網格

DataGridRow row = (DataGridRow)dataGrid.ItemContainerGenerator.ContainerFromIndex(i); 
TextBlock cellContent = dataGrid.Columns[0].GetCellContent(row) as TextBlock; 

但我只得到了null。還有其他解決方案嗎?我究竟做錯了什麼?

我想從我的細胞中獲取數據。我的單元格是複選框。

+0

檢查該解決方案 http://stackoverflow.com/questions/1976087/wpf-datagrid-set-selected-row/5483614#5483614 –

回答

2

這取決於您試圖獲取此數據的方式/時間。 WPF更適合通過ItemsSource中綁定的對象訪問數據。因此,如果您的ItemsSource是MyObject的列表,那麼特定的行將是MyObject類型而不是純DataRow。

如果您正在訪問通過點擊它的裝置中的數據,你可以做這樣的事情:

var currentItem = myDataGrid.SelectedItem as MyObject; 

現在,你有電流爲MyObject在它原本打算形式,而不是在網格採摘。

+0

這是舊的,但如此之大。非常感謝! – VixinG

-2
for(int row =0; row < dg_CountInventory.Rows.Count; row ++) //Loop through each row 
    { 
     //Provide the Column Index and row as in Loop 
     TextBlock b = dg_CountInventory.Columns[1].GetCellContent(dg_CountInventory.Items[row ]) as TextBlock; 
    } 

dg_CountInventory是通過所有的記錄 存在於數據網和手機/塔,只要我的網Name.This代碼迴路。#

+5

['DataGrid'](https://msdn.microsoft.com/en-us/library/system.windows.controls.datagrid%28v=vs.110%29.aspx)沒有'行'屬性。 –