¿Cómo oculto el selector de filas de cuadrícula de datos wpf?

108

Estoy usando el control WPF DataGrid para mostrar algunos detalles y un botón de selección, y no necesito la columna del selector gris en el lado izquierdo. También está arruinando la belleza de mi diseño.

¿Hay alguna forma de eliminarlo o cómo puedo diseñarlo para que coincida si no es así?

Tim Almond
fuente

Respuestas:

149

Utilice la RowHeaderWidthpropiedad:

<my:DataGrid RowHeaderWidth="0" AutoGenerateColumns="False" Name="dataGrid1" />

Tenga en cuenta que también puede especificar un estilo o plantilla para él, en caso de que decida que realmente le gusta y desea conservarlo porque puede hacer algo interesante con él.

babosa
fuente
1
por alguna razón, no pude encontrar eso en ningún lado. Siéntete un poco "¡doh!" ahora, pero gracias.
Tim Almond
30
La respuesta de user556009 es la respuesta correcta para esto. Es decir, establezca HeadersVisibility = "Column"
Sameera
6
@scorpion: establecer solo HeadersVisibility = "Column" hará que algunos encabezados de columna se desplacen horizontalmente en comparación con el contenido de la celda. Establecer HeadersVisibility = "Column" y RowHeaderWidth = "0" (o solo el último) soluciona este problema.
Jarek Kardas
1
@JarekKardas Fue mi caso. Jugué con varios valores de HeadersVisibility y RowHeaderWidth y no puedo deshacerme del cambio. Luego dejo solo HeadersVisibility = "Column" y simplemente limpié y reconstruí la solución y el turno se ha ido. Después de eso, solo HeadersVisibility = "Column" fue suficiente.
Alex34758
233

En lugar de establecer el Ancho, puede ocultar completamente los encabezados de fila configurando en DataGrid

HeadersVisibility="Column"
George Mavritsakis
fuente
3
gridView.HeadersVisibility = DataGridHeadersVisibility.Column;
George Mavritsakis
2
Si alguien quiere eliminar todos los encabezados:HeadersVisibility="None"
Tim Pohlmann
2

Para eliminar el encabezado de fila (campo gris) en Datagrid en WPF

<DataGrid x:Name="TrkDataGrid" HeadersVisibility="Column">
</DataGrid>

Para eliminar u ocultar el encabezado de columna en DataGrid WPF

<DataGrid x:Name="TrkDataGrid" HeadersVisibility="Row">
</DataGrid>

Para eliminar u ocultar el encabezado de columna y fila en DataGrid WPF

<DataGrid x:Name="TrkDataGrid" HeadersVisibility="None">
</DataGrid>
Maghalakshmi Saravana
fuente
Prueba esto. Es útil
Maghalakshmi Saravana
Que la respuesta a esta pregunta se merece
Orace
0

Tuvo el mismo problema.

Parece que RowHeaderWidth no es compatible con XAML, PERO se puede especificar en el código detrás justo después del enlace y elimina esa columna de selector de mierda.

grdName.RowHeaderWidth = 0

Frank Kotulak
fuente