DataGrid получить значения столбцов выбранных строк

Я пытаюсь получить значения каждого столбца выбранной строки в DataGrid. Вот что у меня:

private void dataGrid1_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e)
{
    DataGrid dg = sender as DataGrid;
    Console.WriteLine(dg.SelectedCells[0].ToString());
}

Но это не работает. Если я использую SelectedCells.Count , то я получаю правильное количество столбцов, но я не могу получить значения этих столбцов в выбранной строке. Я пробовал довольно долго, но безуспешно! Вот мой XAML:

<Grid>
    <DataGrid CanUserAddRows="True" AutoGenerateColumns="False" Height="200" HorizontalAlignment="Stretch" Margin="12,12,79,0" Name="dataGrid1" VerticalAlignment="Top" Width="389" DataContext="{Binding}" CanUserResizeColumns="False" CanUserResizeRows="False" HorizontalContentAlignment="Stretch" PreviewMouseDoubleClick="dataGrid1_PreviewMouseDoubleClick" CellEditEnding="dataGrid1_CellEditEnding">
        <DataGrid.Columns>
            <DataGridTextColumn Binding="{Binding  Path=UserID}"
                                Header="User ID" Width="SizeToHeader" />
            <DataGridTextColumn Binding="{Binding  Path=UserName}"
                                Header="User ID" Width="SizeToHeader" />
        </DataGrid.Columns>
    </DataGrid>
</Grid>

В идеале я хотел бы получить доступ к данным, выполнив что-то вроде rowData.UserID , но я не могу с этим справиться. Есть много руководств и справок по использованию DataGridView, но я этим не пользуюсь.

34
задан Dan J 2 March 2012 в 00:28
поделиться