C# Datagrid从选定行获取隐藏单元格

C# Datagrid从选定行获取隐藏单元格,c#,wpf,.net-4.0,wpfdatagrid,C#,Wpf,.net 4.0,Wpfdatagrid,您好,我在访问所选行的数据网格中的隐藏值时遇到问题: <DataGrid Name="grid" ItemsSource ="{Binding}" IsReadOnly="True" AutoGenerateColumns="False"> <DataGrid.Columns> <DataGridTextColumn Header="Id_user" Binding="{Binding id_user}" Visibility="Hidden

您好,我在访问所选
行的
数据网格
中的隐藏值时遇到问题:

<DataGrid Name="grid" ItemsSource ="{Binding}" IsReadOnly="True" AutoGenerateColumns="False">
    <DataGrid.Columns>
        <DataGridTextColumn Header="Id_user" Binding="{Binding id_user}" Visibility="Hidden"/>
        <DataGridTextColumn Header="A" Binding="{Binding A}" />
        <DataGridTextColumn Header="B" Binding="{Binding B}" />
    </DataGrid.Columns>

    <DataGrid.ItemContainerStyle>
        <Style TargetType="DataGridRow">
            <EventSetter Event="MouseDoubleClick" Handler="selectRow"/>
        </Style>
    </DataGrid.ItemContainerStyle>
</DataGrid>
有没有简单的方法可以做到这一点

编辑:


行[“ID”]
不是
SelectedItem.ID
。这是不同的值。

您应该将此逻辑移到viewmodel。代码隐藏中的事件处理程序应如下所示:

private void selectRow(object sender,RoutedEventArgs  e) 
{
    ViewModel.Navigate();
}
下面是
Navigate()
实现:

public void Navigate()
{
    NavigationService.Navigate(new PageA(SelectedItem.id_user));
}
剩下要做的就是将视图模型上的
SelectedItem
属性绑定到您的
DataGrid

<DataGrid Name="grid" SelectedItem="{Binding SelectedItem}" ItemsSource ="{Binding Collection}"  IsReadOnly="True" AutoGenerateColumns="False" >


SelectedItem.id!=行[“ID”]我知道我应该在开头写下不同的内容:/no,这是
var x=row[“ID”]中的ID,其中
是您选择的项目。如果不是这样,请编辑你的代码。好的,我编辑了。现在,它应该不会与SelectedItem.id搞错,但是如何将SelectedItem绑定到所选行呢?我是xaml的新手,我需要几个星期才能找到。
<DataGrid Name="grid" SelectedItem="{Binding SelectedItem}" ItemsSource ="{Binding Collection}"  IsReadOnly="True" AutoGenerateColumns="False" >