繁体   English   中英

在C#/ Xamarin.Forms中使用对象(标签)作为其他模板

[英]Use an object (Label) as a template for others in C# / Xamarin.Forms

我有一些设置要应用于几乎所有我的Labels ,因此我的想法是使用“默认属性”创建一个templateLabel ,然后在创建它们时将其复制到其他标签。

不过,我首先Xamarin.Forms.Label是创建一个从Xamarin.Forms.Label继承的Class,在其中定义我的默认属性,然后使用它而不是new Label()来创建new Label() 但我对此表示怀疑,这样做是否正确(最佳?仅?可能?)方法? 或存在类似的东西。

 var myDefaultPropierties = {Text : "Something", VerticalOptions: LayoutOptions.Center};
 Label myFirstLabel = new Label(myDefaultPropierties);
 Label mySecondLabel = new Label(myDefaultPropierties);

创建Label的子类可以使用,但是使用样式,然后将样式应用于Label会更简洁。

这是XAML中的一个Style示例。 您可以在代码中获得相同的结果,但是Styles主要用于XAML:

<ContentPage.Resources>
    <ResourceDictionary>
        <Style x:Key="labelStyle" TargetType="Label">
            <Setter Property="Text" Value="Something" />
            <Setter Property="VerticalOptions" Value="Center" />
        </Style>
     </ResourceDictionary>
<ContentPage.Resources>

...

<Label Style="{StaticResource labelStyle}" />

您可以在https://developer.xamarin.com/guides/xamarin-forms/user-interface/styles/introduction/中找到更多信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM