2011-09-25 17 views
25

De forma predeterminada, un WPF TextBlock parece tener un relleno adicional superior e inferior aplicado. Ojalá esto no fuera así.Cómo eliminar el relleno adicional de un WPF TextBlock?

  • He tratado de establecer el relleno negativo, pero tiene una excepción:

    0, -10,0,0' no es un valor válido para la propiedad 'padding'.

  • He tratado de establecer la propiedad LineHeight, a ningún efecto aparente.

Así es como se ve el TextBlock en Blend. Marqué la parte problemática con el rojo granate.

the red area should be removed

+2

Si tiene una respuesta, debe publicarla como tal, las respuestas * no * pertenecen a la pregunta, pero asegúrese de aceptarlas una vez que esté autorizado. –

Respuesta

38

Algunas investigaciones y H.B. me ha guiado a la respuesta correcta, que está estableciendo las siguientes propiedades:

<TextBlock LineStackingStrategy="BlockLineHeight" 
      LineHeight="20"/> <!-- Or some other value you fancy. --> 
+0

+1 Gracias por esto. Por cierto, ¿la coma al final de la primera línea es intencional? – Sabuncu

8

Esto es probablemente parte de la fuente que es Segoe UI por defecto, en lugar tratar Segoe por ejemplo. (No se puede asignar el relleno negativo, pero podría asignar negativo Margins, por ejemplo: Margin="0,-3,0,0")

3

Este espacio no es relleno, sino parte de la fuente, reservada para los acentos encima y debajo de los caracteres.

La respuesta aceptada hace que la altura de la línea sea más pequeña que la altura de la fuente.

+1

Esto podría ser mejor como un comentario –

Cuestiones relacionadas