我希望检索绑定到sqlexecute查询的datagrid的值。
defects.DefectsDataGrid.DataContext = searchQuery.ExecuteReader();
然后,我使用SelectedCellsChanged事件对选中的DataGridRow执行某些操作。
当我输入断点时,我可以看到System.Data.Common.DataRecordInternal>下面的值。非公开会员> _values。但我不确定如何引用_Values。
感谢您一如既往的帮助。
代码
private void DefectsDataGrid_SelectedCellsChanged(object sender, SelectedCellsChangedEventArgs e)
{
//Retrieve selected row
var rows = DefectsDataGrid.SelectedItems;
//This tells me I have one row, which is of type System.Data.Common.DataRecordInternal
//How do I retrieve the values from this type?
}
答案 0 :(得分:0)
您似乎需要使用DataReader
将记录投射到IDataRecord
。
答案 1 :(得分:0)
defects.DefectsDataGrid.DataContext = searchQuery.ExecuteReader();
我将上面改为以下内容,它给了我一个数据类型DataRowView而不是DataRecordInternal
defects.DefectsDataGrid.ItemsSource = DataTable.DefaultView;
这使我可以轻松引用事件中的行。
private void DefectsDataGrid_SelectedCellsChanged(object sender, SelectedCellsChangedEventArgs e)
{
//Retrieve selected value from the row selected
DataRowView dataRow = (DataRowView)DefectsDataGrid.SelectedItem;
string phrase = dataRow[2];
}