Estoy tratando de obtener los valores de cada columna de una fila seleccionada en un DataGrid. Esto es lo que tengo:DataGrid obtener valores de columna de filas seleccionadas
private void dataGrid1_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e)
{
DataGrid dg = sender as DataGrid;
Console.WriteLine(dg.SelectedCells[0].ToString());
}
Pero esto no funciona. Si hago un SelectedCells.Count
, entonces obtengo el número correcto de columnas, pero parece que no puedo obtener los valores de estas columnas en la fila seleccionada. ¡Lo he intentado durante bastante tiempo sin suerte! Aquí está mi 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>
que lo ideal sería tener acceso a los datos a través de hacer algo así como rowData.UserID
pero me parece que no puede resolverlo. Hay muchos tutoriales y ayuda para usar DataGridView, pero no los estoy usando.
etiquetas WPF, actualizados . – Prisoner
Según mis hallazgos, la solución más fácil: http://stackoverflow.com/a/42013760/7103438 –