9

如何使以下标签中的顶部和底部填充更小?正如我所看到的,边界框比它需要的大得多,但填充设置为 0,所以它不能更小。

<Label Background="AliceBlue" Content="1800" FontSize="170" FontWeight="Bold" Foreground="Gray" Padding="0" />
4

7 回答 7

4

您可以使用保证金。

使用边距,您可以设置要向左、向右、上、下移动的数量

我的意思是Margin="0,0,0,0"那个意思。你什么都没有。

它通过以下方式进行:Margin ="left, top, right, bottom

所以如果我有margin ="2,5,3,5"

这意味着我有一个距左侧 2 个像素的边距,距顶部 5 个像素,距右侧 3 个像素和距底部 5 个像素的边距。

于 2010-07-08T19:55:17.447 回答
3

刚刚在标签周围有边框的地方点击了这个,我设置了一个负边距。

<Border BorderBrush="Black" BorderThickness="1">
    <Label Margin="-5" Content="Unable to report/>
</Border>
于 2013-03-13T14:31:17.520 回答
2

填充在 XAML 中不存在于FrameworkElement. 使用保证金。

填充可以应用于三个元素:BlockBorder并且Control因为这些元素有一个外边缘。

于 2010-07-08T19:37:49.707 回答
2

Try to wrap the Label in a Layout for example StackLayout and give padding to that Layout, then Label will align accordingly. This code may helps you.

<StackLayout Padding="10">
    <Label x:Name="TitleLbl"></Label>
</StackLayout> 
于 2015-10-07T12:04:17.547 回答
1

通过设置边距并将其包装在 StackLayout 中来调整标签填充

<StackLayout VerticalOptions="StartAndExpand" Margin="0,0,0,0" BackgroundColor="Red">
            <Label Text="Login to your account" TextColor="White" Margin="10,10,10,10"  />
        </StackLayout>
于 2018-06-11T19:32:50.933 回答
1

制作自定义渲染器 PCL:

 public class SALabel : Label
    {

        public static readonly BindableProperty PaddingProperty = BindableProperty.Create("Padding", typeof(Thickness), typeof(SALabel),default(Thickness));

        public Thickness Padding
        {
            get { return (Thickness)GetValue(PaddingProperty); }
            set { SetValue(PaddingProperty, value); }
        }
}

在安卓中

Control.SetPadding((int)saElement.Padding.Left, (int)saElement.Padding.Top, (int)saElement.Padding.Right, (int)saElement.Padding.Bottom);
于 2017-08-30T14:23:30.243 回答
0

如果您可以更改为使用 TextBlock,那么您可以更好地控制填充。Label 的目的似乎是通过其内部样式固定填充。请参阅“如何删除 WPF 标签中文本周围的边距? ”。

于 2015-04-17T20:05:33.770 回答