Xamarin XAML语言教程模板视图TemplatedView(一)
Xamarin XAML语言教程模板视图TemplatedView(一)
模板视图TemplatedView
与模板页面相对的是TemplatedView,它被称为模板视图,它的功能和模板页面类似,也是用来显示控件模板的,只不过比模板页面更加灵活。TemplatedView提供ControlTemplate属性,实现对控件模板的关联,从而展现对应的界面。
【示例14-6:TemplatedViewDemo】以下将使用模板视图显示控件模板,并实现模板的切换。具体的操作步骤如下:
(1)打开App.xaml文件,编写代码,实现在应用程序级别中构建控件模板,代码如下:
- <?xml version="1.0" encoding="utf-8" ?>
- <Application xmlns="http://xamarin.com/schemas/2014/forms"
- xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
- x:Class="TemplatedViewDemo.App">
- <Application.Resources>
- <ResourceDictionary>
- <!--构建控件模板-->
- <ControlTemplate x:Key="ChineseTemplate">
- <StackLayout>
- <StackLayout VerticalOptions="End">
- <BoxView Color="Aqua" />
- </StackLayout>
- <StackLayout Spacing="35"
- VerticalOptions="CenterAndExpand" >
- <Frame OutlineColor="Accent">
- <StackLayout Spacing="20"
- VerticalOptions="CenterAndExpand"
- HorizontalOptions="Center">
- <Label Text="山居秋暝"
- FontSize="30"
- FontAttributes="Bold"
- HorizontalOptions="Center"/>
- <Label Text="空山新雨后,天气晚来秋。"
- FontSize="18"/>
- <Label Text="明月松间照,清泉石上流。"
- FontSize="18"/>
- <Label Text="竹喧归浣女,莲动下渔舟。"
- FontSize="18"/>
- <Label Text="随意春芳歇,王孙自可留。"
- FontSize="18"/>
- </StackLayout>
- </Frame>
- <Button Command="{TemplateBinding Parent. CommandEnglish}"
- Text="Enter English Template" />
- </StackLayout>
- </StackLayout>
- </ControlTemplate>
- <!--构建控件模板-->
- <ControlTemplate x:Key="EnglishTemplate">
- <StackLayout>
- <StackLayout VerticalOptions="End">
- <BoxView Color="Green" />
- </StackLayout>
- <StackLayout Spacing="35"
- VerticalOptions="CenterAndExpand" >
- <Frame OutlineColor="Accent">
- <Label Text="your life only lasts for a few decades, so be sure that you don\'t leave any regrets. laugh or cry as you like, and it‘s meaningless to oppress yourself."
- FontAttributes="Bold"
- FontSize="18"/>
- </Frame>
- <Button Command="{TemplateBinding Parent.CommandChinese}"
- Text="Enter Chinese Template" />
- </StackLayout>
- </StackLayout>
- </ControlTemplate>
- </ResourceDictionary>
- </Application.Resources>
- </Application>
在此代码中,我们构建了两个控件模板,一个为ChineseTemplate控件模板,另一为EnglishTemplate控件模板。
Xamarin XAML语言教程模板视图TemplatedView(一)的更多相关文章
- Xamarin XAML语言教程模板视图TemplatedView(二)
Xamarin XAML语言教程模板视图TemplatedView(二) (2)打开MainPage.xaml文件,编写代码,将构建的控件模板应用于中TemplatedView.代码如下: <? ...
- Xamarin XAML语言教程模板页面TemplatedPage
Xamarin XAML语言教程模板页面TemplatedPage 模板页面TemplatedPage 在上文中我们提到了TemplatedPage,它被称为模板页面,用来显示控件模版.Templat ...
- Xamarin XAML语言教程ContentView视图作为自定义视图的父类
Xamarin XAML语言教程ContentView视图作为自定义视图的父类 自定义视图的父类:ContentView视图可以作为自定义视图的父类. [示例14-2]以下将自定义一个颜色视图.具体的 ...
- Xamarin XAML语言教程基本视图ContentViewg构架范围框架
Xamarin XAML语言教程基本视图ContentViewg构架范围框架 ContentView视图基本上有三个作用,下面依次介绍. (1)范围框架:ContentView视图可以构建一个范围框架 ...
- Xamarin XAML语言教程基本视图ContentView
Xamarin XAML语言教程基本视图ContentView 基本视图ContentView 视图是用来呈现具体内容,根据呈现内容不同,使用的视图也不同.其中,最常用的视图为ContentView视 ...
- Xamarin XAML语言教程构建ControlTemplate控件模板
Xamarin XAML语言教程构建ControlTemplate控件模板 控件模板ControlTemplate ControlTemplate是从Xamarin.Forms 2.1.0开始被引入的 ...
- Xamarin XAML语言教程构建ControlTemplate控件模板 (四)
Xamarin XAML语言教程构建ControlTemplate控件模板 (四) 2.在页面级别中构建控件模板 如果开发者要在页面级别中构建控件模板,首先必须将ResourceDictionary添 ...
- Xamarin XAML语言教程构建ControlTemplate控件模板 (三)
Xamarin XAML语言教程构建ControlTemplate控件模板 (三) (3)打开MainPage.xaml.cs文件,编写代码,实现主题的切换功能.代码如下: using System; ...
- Xamarin XAML语言教程构建ControlTemplate控件模板 (二)
Xamarin XAML语言教程构建ControlTemplate控件模板 (二) (2)打开MainPage.xaml文件,编写代码,将构建的控件模板应用于ContentView中.代码如下: &l ...
随机推荐
- socket 极值数量
在做Socket 编程时,我们经常会要问,单机最多可以建立多少个 TCP 连接,本文将介绍如何调整系统参数来调整单机的最大TCP连接数. Windows 下单机的TCP连接数有多个参数共同决定,下面一 ...
- google protobuf序列化原理解析 (PHP示例)
一.简介 Protocol Buffers是谷歌定义的一种跨语言.跨平台.可扩展的数据传输及存储的协议,因为将字段协议分别放在传输两端,传输数据中只包含数据本身,不需要包含字段说明,所以传输数据量小, ...
- Java 中的静态内部类
静态内部类是 static 修饰的内部类,这种内部类的特点是: 1. 静态内部类不能直接访问外部类的非静态成员,但可以通过 new 外部类().成员 的方式访问 2. 如果外部类的静态成员与内部类的成 ...
- 【bzoj4567】SCOI2016背单词
题号莫名喜感. 倒序建Trie,dfs这棵Trie,贪心一下,每次按照size排序计算贡献就好. #include<bits/stdc++.h> #define N 100010 #def ...
- JavaScript原型与继承(1)
内容: 创建对象的几种模式以及创建的过程 原型链prototype的理解,以及prototype与 __proto__([[Prototype]])的关系 继承的几种实现 1.常见模式与原型链的理解 ...
- python--tesseract
tesseract的介绍 我们爬虫会受到阻碍,其中一个便是我们在模拟登陆或者请求一些数据的时候,出现的图形验证码,因此我们需要一种能叫图形验证码识别成文本的技术.将图片翻译成文字一般称为光学文字识别( ...
- tab切换 jQuery
$('p.guidan-load1').click(function(){ $("p.guidan-load1").removeClass("guidan-load12& ...
- ip和子网掩码的判断
只要记住B类IP的范围就好了(128以下的是A,128~191是B段,192以上是C段) 比如B类,网络地址为前两段,后面两段是主机地址,所以网络标识应该是255.255.0.0
- Leetcode 之Count and Say(35)
很有意思的一道题,不好想啊. string getNext(string &s) { ]; ; stringstream ss; ; i < s.size(); i++) { if (s ...
- hadoop 分布式环境安装
centos 多台机器免密登录 hadoop学习笔记(五)--全分布模式下SSH免密码登陆的实现 参考安装教程 Hadoop-2.7.4 集群快速搭建 启动hadoop cd /opt/soft/ha ...