Pregunta

¿Cómo puedo configurar el TextWrapping de cada célula en un WPF DataGrid a "nowrap"? Me entender la célula en sí no tiene una propiedad "TextWrapping", pero me gustaría establecer la propiedad en el control dentro de la célula.

La cuadrícula de datos que estoy trabajando con columnas no se han definido de forma explícita, el conjunto de resultados que está mostrando es dinámico.

Estoy buscando una solución similar a las respuestas proporcionadas en los enlaces de abajo. Sin embargo, yo no quiero anular explícitamente el estilo de celda / plantilla y definir el control para ser utilizado. En su lugar me gustaría decir, si un TextBlock está siendo utilizado, establezca su propiedad TextWrapping a nowrap.

WPF toolkit cuadrícula de datos celular ajuste de texto
¿Cómo activo el ajuste del texto en todas encabezados de columna?

¿Fue útil?

Solución

En los recursos de su cuadrícula de datos, se puede especificar un estilo predeterminado alternativo para TextBlocks. Esto debería hacer lo que necesite ( " Si se utiliza un TextBlock, establezca su propiedad TextWrapping a nowrap "). Esto no funcionará si el TextBlocks especificar explícitamente un estilo diferente a utilizar.

<DataGrid ...>
    <DataGrid.Resources>
        <Style TargetType="{x:Type TextBlock}">
            <Setter Property="TextWrapping" Value="NoWrap"/>
        </Style>
    </DataGrid.Resources>
    ...
</DataGrid>

(No probado, ya que no tengo Visual Studio está disponible en este momento.)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top