如何在xaml标签中调整填充

时间:2009-05-06 05:40:10

标签: xaml label padding

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

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

7 个答案:

答案 0 :(得分:4)

您可以使用保证金。

有了保证金,您可以设置您想要左,右,上,下

的金额

我的意思是Margin="0,0,0,0"这意味着。你什么都没有。

它遵循以下内容:Margin ="left, top, right, bottom

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

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

答案 1 :(得分:2)

FrameworkElement上的XAML中不存在填充。使用保证金。

填充可以应用于三个元素:BlockBorderControl,因为这些元素具有外边缘。

答案 2 :(得分:2)

刚刚在标签周围出现边框时,我设置了一个负边距。

<Border BorderBrush="Black" BorderThickness="1">
    <Label Margin="-5" Content="Unable to report/>
</Border>

答案 3 :(得分:1)

尝试将Label包装在布局中,例如StackLayout,并为该布局提供填充,然后Label将相应地对齐。此代码可能对您有所帮助。

<StackLayout Padding="10">
    <Label x:Name="TitleLbl"></Label>
</StackLayout> 

答案 4 :(得分: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); }
        }
}

在android

Control.SetPadding((int)saElement.Padding.Left, (int)saElement.Padding.Top, (int)saElement.Padding.Right, (int)saElement.Padding.Bottom);

答案 5 :(得分: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>

答案 6 :(得分:0)

如果您可以更改为使用TextBlock,则可以更好地控制填充。标签的目的似乎是填充由其内部样式固定。看到 &#34; How can I remove the margins around text in a WPF label?&#34;