2012-07-16 21 views
10

Estoy tratando de hacer un pequeño teclado virtual sin etiquetas. La siguiente es mi teclado en XAML (pero con algo más que 3 llaves):¿Cómo puedo eliminar los márgenes alrededor del texto en una etiqueta WPF?

<StackPanel Orientation="Vertical"> 
    <StackPanel Orientation="Horizontal" HorizontalAlignment="Center"> 
     <Border BorderThickness="1" BorderBrush="DarkGray"> 
      <Label Content="A" FontSize="12" MouseDown="KeyButton_Click" /> 
     </Border> 
     <Border BorderThickness="1" BorderBrush="DarkGray"> 
      <Label Content="B" FontSize="12" MouseDown="KeyButton_Click" /> 
     </Border> 
    </StackPanel> 
    <StackPanel Orientation="Horizontal" HorizontalAlignment="Center"> 
     <Border BorderThickness="1" BorderBrush="DarkGray"> 
      <Label Content="C" FontSize="12" MouseDown="KeyButton_Click" /> 
     </Border> 
    </StackPanel> 
</StackPanel> 

El problema con esto es que hay demasiado espacio que rodea el texto en las etiquetas, haciendo que el teclado para ser mucho más grande que Necesita ser. Si configuro manualmente el alto y el ancho de las etiquetas, eso (1) no tendrá en cuenta las diferencias en las fuentes y (2) cortará parte de la letra en lugar de los márgenes superior e izquierdo. ¿Hay alguna otra forma de reducir estos márgenes para que sean casi del mismo tamaño que el texto en sí?

+2

¿Has intentado configurar Padding a 0? – Vale

+3

OT: si solo planea usar texto en una 'Etiqueta', use un' TextBlock' en lugar de 'Label'. Menos recursos – Silvermind

+0

@Silvermind ¡Gracias, ponlo como una respuesta! – Matt

Respuesta

10

Uso TextBlock en lugar de Label

+8

Esta no es la respuesta correcta. La 'Etiqueta' no es equivalente a' TextBlock'. Considera 'Label.Target' ... – l33t

+2

Esto ciertamente parece ser la respuesta correcta en este caso. – Batman

+1

@Batman, es solo la respuesta correcta a su DataContext del tipo que se muestra correctamente mediante un TextBlock. Por mi parte, la única razón por la que busqué en Google el problema fue porque tengo el otro tipo. –

28

establecer el relleno a 0.

Yo tenía el mismo problema. Al examinar las propiedades de una etiqueta en la ventana de propiedades, descubrí que el relleno predeterminado de una etiqueta es 5. Establecerlo en 0 fue el truco.

+1

¡Gracias, esto me sirvió de algo! :-) –

Cuestiones relacionadas