美文网首页
xamarin ControlTemplate使用

xamarin ControlTemplate使用

作者: netvigator | 来源:发表于2017-11-10 16:04 被阅读0次

    要在应用程序级别(app.xaml文件)定义ControlTemplate,必须将ResourceDictionary添加到App类。 默认情况下,从模板创建的所有Xamarin.Forms应用程序都使用App类来实现Application子类。 要在应用程序级声明一个ControlTemplate,在应用程序的ResourceDictionary中使用XAML,默认的App类必须替换为一个XAML App类和相关的代码隐藏,如下面的代码示例所示:

    <Application xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="SimpleTheme.App">
        <Application.Resources>
            <ResourceDictionary>
                <ControlTemplate x:Key="TealTemplate">
                    <Grid>
                        ...
                        <BoxView ... />
                        <Label Text="Control Template Demo App"
                               TextColor="White"
                               VerticalOptions="Center" ... />
                        <ContentPresenter ... />
                        <BoxView Color="Teal" ... />
                        <Label Text="(c) Xamarin 2016"
                               TextColor="White"
                               VerticalOptions="Center" ... />
                    </Grid>
                </ControlTemplate>
                <ControlTemplate x:Key="AquaTemplate">
                    ...
                </ControlTemplate>
            </ResourceDictionary>
        </Application.Resources>
    </Application>
    

    当然对应模版的逻辑代码也要在app.xaml.cs文件中编写。
    然后在对应的page页面中调用:

    <ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="SimpleTheme.HomePage">
        <ContentView x:Name="contentView" Padding="0,20,0,0"
                     ControlTemplate="{StaticResource TealTemplate}">
            <StackLayout VerticalOptions="CenterAndExpand">
                <Label Text="Welcome to the app!" HorizontalOptions="Center" />
                <Button Text="Change Theme" Clicked="OnButtonClicked" />
            </StackLayout>
        </ContentView>
    </ContentPage>
    

    相关文章

      网友评论

          本文标题:xamarin ControlTemplate使用

          本文链接:https://www.haomeiwen.com/subject/mvgbmxtx.html