2011-09-25 11 views
25

Per impostazione predefinita un WPF TextBlock sembra avere un'ulteriore spaziatura superiore e inferiore applicata. Vorrei che non fosse così.Come rimuovere il riempimento aggiuntivo da un TextBlock WPF?

  • Ho provato a installare imbottitura negativo, ma abbiamo ottenuto un'eccezione:

    0, -10,0,0' non è un valore valido per la proprietà 'padding'.

  • Ho provato impostando la proprietà LineHeight, senza alcun effetto apparente.

Ecco come appare TextBlock in Blend. Ho segnato la parte problematica con rosso bordeaux.

the red area should be removed

+2

Se si dispone di una risposta, è necessario inserirla come tale, le risposte * non * appartengono alla domanda, assicurarsi anche di accettarla una volta che si è autorizzati a farlo. –

risposta

38

qualche ricerca e H.B. mi ha guidato alla risposta giusta, che è impostando le seguenti proprietà:

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

+1 Grazie per questo. A proposito, è la virgola alla fine della prima riga sopra intenzionale? – Sabuncu

8

Questa è probabilmente parte del carattere che è Segoe UI per impostazione predefinita, provare Segoe, invece, per esempio. (non è possibile assegnare imbottitura negativo, ma è possibile assegnare negativo Margins, ad esempio: Margin="0,-3,0,0")

3

Questo spazio non è padding, ma parte del font, riservato per gli accenti sopra e sotto i caratteri.

La risposta accettata rende l'altezza della riga inferiore all'altezza del carattere.

+1

Questo potrebbe essere meglio come commento –

Problemi correlati