ejemplo - wpf datagrid binding
¿Cómo mostrar el índice de fila para wpf toolkit datagrid? (3)
No tengo una muestra de código en este momento, pero de acuerdo con esta publicación hay "un evento LoadingRow al que se puede adjuntar. En caso de que pueda establecer el encabezado cada vez al número que desea en función del elemento en el evento args ".
Esa es la única forma en que pude encontrar para hacerlo. No parece haber una solución XAML elegante.
Solo quiero agregar una columna de índice en wpf toolkit DataGrid
para mostrar el índice de fila de cada dato en DataGrid
. ¿Cómo?
<dg:DataGrid ItemsSource="{Binding List}"
SelectionMode="Extended"
IsReadOnly="True"
AutoGenerateColumns="False"
HorizontalAlignment="Left">
<dg:DataGrid.Columns>
**<dg:DataGridTextColumn Header="Row Index"></dg:DataGridTextColumn>**
<dg:DataGridTextColumn Header="Branch"
Binding="{Binding Branch.Id}"></dg:DataGridTextColumn>
<dg:DataGridTextColumn Header="Count"
Binding="{Binding RequestCount}"></dg:DataGridTextColumn>
</dg:DataGrid.Columns>
</dg:DataGrid>
puede usar un multibinding y un convertidor para enlazar al elemento en la fila y la cuadrícula de datos principal. luego, en el convertidor, busca la posición de la fila en los elementos de las cuadrículas de datos.
En esta página, descargue la muestra WPFDatagridWithRowNumbers.zip
¡Disfrutar!
Olvídese de multibinding y convertidores. Puedes hacer esto completamente en XAML.
Primero, vincule la propiedad AlternationCount de su cuadrícula de datos con la propiedad count de su colección, o con la propiedad Items.Count de su DataGrid de la siguiente manera:
<dg:DataGrid AlternationCount="{Binding List.Count}" />
O:
<dg:DataGrid AlternationCount="{Binding Items.Count, RelativeSource={RelativeSource Self}" />
Cualquiera de los dos debería funcionar
Luego, suponiendo que está utilizando un DataGridTextColumn para su columna más a la izquierda, haga lo siguiente en su definición de DataGrid.Columns:
<dg:DataGrid.Columns>
<dg:DataGridTextColumn Binding="{Binding AlternationIndex, RelativeSource={RelativeSource AncestorType=DataGridRow}}"
</dg:DataGrid.Columns>
Si no desea comenzar en 0, puede agregar un convertidor a su enlace de índice de alternancia para incrementar el índice.