C# 当我使用DataGridRow从所选行内容获取数据时,总是返回空数据
我使用WPF Metro数据网格。 当我使用DataGridRow从所选行内容获取数据时, 始终在变量“rowview”处返回空数据。 我有什么问题 这是我的密码C# 当我使用DataGridRow从所选行内容获取数据时,总是返回空数据,c#,wpf,datagrid,C#,Wpf,Datagrid,我使用WPF Metro数据网格。 当我使用DataGridRow从所选行内容获取数据时, 始终在变量“rowview”处返回空数据。 我有什么问题 这是我的密码 private void DataGrid_MouseDoubleClick(object sender, MouseButtonEventArgs e) { IInputElement element = e.MouseDevice.DirectlyOver; if (element
private void DataGrid_MouseDoubleClick(object sender, MouseButtonEventArgs e)
{
IInputElement element = e.MouseDevice.DirectlyOver;
if (element != null && element is FrameworkElement)
{
if (((FrameworkElement)element).Parent is DataGridCell)
{
DataGrid grid = sender as DataGrid;
if (grid != null && grid.SelectedItems != null && grid.SelectedItems.Count == 1)
{
DataGridRow rowview = grid.SelectedItem as DataGridRow;
if (rowview != null)
{
ProjectInfo addJobWindow = new ProjectInfo();
addJobWindow.ShowDialog();
}
}
}
}
}
<DataGrid x:Name="DgProjectInfo" ItemsSource="{Binding Projects}"
private void DataGrid_MouseDoubleClick(对象发送器,MouseButtonEventArgs e)
{
IIInputElement=e.MouseDevice.DirectlyOver;
if(element!=null&&element为FrameworkElement)
{
if(((FrameworkElement)元素)。父元素为DataGridCell)
{
DataGrid grid=发送方作为DataGrid;
if(grid!=null&&grid.SelectedItems!=null&&grid.SelectedItems.Count==1)
{
DataGridRow rowview=grid.SelectedItem作为DataGridRow;
如果(行视图!=null)
{
ProjectInfo addJobWindow=新的ProjectInfo();
addJobWindow.ShowDialog();
}
}
}
}
}
无法将grid.SelectedItem转换为DataGridRow。请参阅以下代码以获取datagrid行
DataGridRow rowview = (DataGridRow)grid.ItemContainerGenerator.ContainerFromIndex(grid.SelectedIndex);
可能是grid.SelectedItem
不是DataGridRow
?
您可以通过将鼠标悬停在属性“SelectedItem”上并阅读提示进行检查
您还可以键入:
var temp = grid.SelectedItem;
并在此行后添加一个断点,以轻松确定类型 您确定要查看rowView!=无效的您没有使用rowView吗?只需检查是否为grid.selectedItem!=无效的其余阅读下文