如何删除WPF标签中文本的边距?

时间:2012-07-16 09:19:22

标签: c# .net wpf user-interface label

我正在尝试用标签制作一个小虚拟键盘。以下是我在XAML中的键盘(但只有3个键):

<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>

问题在于标签中的文字周围有太多空间,导致键盘比需要的大得多。如果我手动设置标签的高度和宽度,那将(1)不考虑字体的差异,(2)将剪切部分字母而不是顶部和左边距。有没有其他方法可以将这些边距缩小到与文本本身大小相同的程度?

2 个答案:

答案 0 :(得分:46)

将填充设置为0。

我遇到了同样的问题。在检查属性窗口中标签的属性后,我发现标签的默认填充为5.将其设置为0就可以了。

答案 1 :(得分:11)

使用TextBlock代替Label