Xamarin XAML语言教程基础语法篇大学霸
前  言
Xamarin是一个跨平台开发框架。它可以用来开发iOS、Android、Windows Phone和Mac的应用程序。使用Xamarin框架中的Forms子框架,用户可以一次性的开发多个平台的应用,如iOS、Android、Windows Phone,从而节省大量的开发时间。
在Xamarin.Forms中,用户可以直接使用XAML语言直接进行界面设计。这样,就可以将界面和逻辑代码分离,使得应用程序的结构更加清晰。为了满足大家的开发需求,本教程着眼于Xamarin.Forms开发,详细讲解XAML语言在界面设计中的使用。同时为了方便大家理解,我们为每个知识点都配以小实例。
1.学习所需的系统和软件
安装Windows 10操作系统
Xamarin 4.2.0.719
安装OS X 10.11
安装Xcode 8.0
 
目  录
第1章  XAML语言基础 1
1.1  XAML语言简介 1
1.2  创建XAML文件 1
1.2.1  使用Visual Studio创建XAML 1
1.2.2  使用Xamarin Studio创建XAML 6
1.3  XAML文件结构 11
1.4  解析XAML 11
1.5  对象元素的声明方式 13
1.5.1  包含属性的特性语法形式 13
1.5.2  对象元素语法形式 13
1.6  显示到界面 14
1.6.1  创建项目后再创建XAML文件 14
1.6.2  创建项目时创建XAML文件 15
1.7  XAML预览 15
1.7.1  Visual Studio中实现预览 15
1.7.2  Xamarin Studio中实现预览 17
第2章  属性和属性值 18
2.1  设置属性 18
2.1.1  使用属性语法设置属性 18
2.1.2  使用属性元素语法设置属性 19
2.2  附加属性 20
2.3  平台属性标签 21
2.4  内容属性 25
2.5  属性值 26
2.5.1  基本数据类型 26
2.5.2  Unicode字符 26
2.5.3  特殊字符 27
2.5.4  对齐方式 27
2.5.5  复杂类型 27
第3章  代码文件/XAML文件关联属性 29
3.1  x:属性 29
3.1.1  x:Name属性 29
3.1.2  传递参数——带参数的构造函数 30
3.1.3  传递参数——调用方法 33
3.1.4  定制视图 35
3.2  交互 37
3.2.1  事件 38
3.2.2  手势 41
第4章  XAML标记扩展 44
4.1  使用静态成员 44
4.1.1  自带类成员 44
4.1.2  自定义类成员 46
4.1.3  外部类成员 49
4.2  资源字典 50
4.2.1  资源字典定义的基本语法 51
4.2.2  资源项的定义 51
4.2.3  访问静态资源 53
4.2.4  OnPlatform资源 54
4.2.5  字典树 55
4.2.6  动态资源 58
4.3  约束标记扩展 60
4.4  其它标记扩展 63
4.5  自定义标记扩展 63
第5章  样式 72
5.1  基本样式 72
5.1.1  构建样式标签 73
5.1.2  构建样式属性 74
5.1.3  应用样式 76
5.1.4  样式属性使用方法 77
5.1.5  样式的使用规则 81
5.2  在代码中使用样式 83
5.3  样式的继承 88
5.3.1  在样式中定义一个父类类型 88
5.3.2  派生新样式 89
5.4  隐式样式 93
5.4.1  使用隐式样式 94
5.4.2  隐式样式的使用规则 95
5.5  动态样式 100
5.5.1  动态样式的实现 101
5.5.2  设备样式 109
第6章  数据绑定基础 114
6.1  绑定的实现 114
6.2  视图到视图绑定 114
6.2.1  正向绑定 114
6.2.2  反向绑定 117
6.2.3  混合绑定 120
6.2.4  数据转换 123
6.2.5  更新方式 128
6.3  绑定集合 137
第7章  MVVM 142
7.1  MVVM相互关系 142
7.2  数据绑定实现 143
7.3  数据交互 146
7.4  命令接口 151
 

Xamarin XAML语言教程基础语法篇大学霸的更多相关文章

  1. Xamarin XAML语言教程使用Visual Studio创建XAML

    Xamarin XAML语言教程使用Visual Studio创建XAML Xamarin.Forms允许开发人员通过XAML语法对程序的所有用户界面元素进行详细的定制,如文本.按钮.图像和列表框等. ...

  2. Xamarin XAML语言教程构建ControlTemplate控件模板 (四)

    Xamarin XAML语言教程构建ControlTemplate控件模板 (四) 2.在页面级别中构建控件模板 如果开发者要在页面级别中构建控件模板,首先必须将ResourceDictionary添 ...

  3. Xamarin XAML语言教程构建ControlTemplate控件模板

    Xamarin XAML语言教程构建ControlTemplate控件模板 控件模板ControlTemplate ControlTemplate是从Xamarin.Forms 2.1.0开始被引入的 ...

  4. Xamarin XAML语言教程基本页面ContentPage占用面积

    Xamarin XAML语言教程基本页面ContentPage占用面积 基本页面和基本视图都是在开发应用程序时最为常用的.本章将讲解有关基本页面ContentPag.基本视图ContentView.控 ...

  5. Xamarin XAML语言教程通过ProgressTo方法对进度条设置

    Xamarin XAML语言教程通过ProgressTo方法对进度条设置 在ProgressBar中定义了一个ProgressTo方法,此方法也可以用来对进度条当前的进行进行设置,ProgressTo ...

  6. Xamarin XAML语言教程使用属性设置进度条的当前进度

    Xamarin XAML语言教程使用属性设置进度条的当前进度 在图12.19~12.21中我们看到的是没有实现加载的进度条,即进度条的当前进度为0,如果开发者想要修改当前进度,可以使用两种方式:一种是 ...

  7. Xamarin XAML语言教程构建进度条ProgressBar

    Xamarin XAML语言教程构建进度条ProgressBar Xamarin XAML语言教程构建进度条ProgressBar,ProgressBar被称为进度条,它类似于没有滑块的滑块控件.进度 ...

  8. Xamarin XAML语言教程使用方法设置进度条进度

    Xamarin XAML语言教程使用方法设置进度条进度 在ProgressBar中定义了一个ProgressTo方法,此方法也可以用来对进度条当前的进行进行设置,ProgressTo与Progress ...

  9. Xamarin XAML语言教程Progress属性设置进度条进度

    Xamarin XAML语言教程Progress属性设置进度条进度 在图12.19~12.21中我们看到的是没有实现加载的进度条,即进度条的当前进度为0,如果开发者想要修改当前进度,可以使用两种方式: ...

随机推荐

  1. poj 2385 树上掉苹果问题 dp算法

    题意:有树1 树2 会掉苹果,奶牛去捡,只能移动w次,开始的时候在树1 问最多可以捡多少个苹果? 思路: dp[i][j]表示i分钟移动j次捡到苹果的最大值 实例分析 0,1  1,2...说明 偶数 ...

  2. BZOJ 5313: 新Fib数列

    打表找规律 #include<cstdio> using namespace std; int F[20]={0,1,1,2,3,0,3,3,1,4,0,4,4,3,2,0,2,2,4,1 ...

  3. 栈的push、pop序列 【微软面试100题 第二十九题】

    题目要求: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1.2.3.4.5是某栈的压栈序列,序列4.5.3.2.1是该压栈 ...

  4. mac常用软件,自用找了很久的分享一下相信很多人需要

    CleanMyMac 3.1.1.dmg比较好用的清理软件.破解版!http://pan.baidu.com/s/1i4mo7jvNTFS读写 Tuxera NTFS for Mac.rar也是破解的 ...

  5. python练手系列-分布式监控

    如果我们要写一个监控系统,要注意哪些问题和需求? [1] agent收集数据的时候需要通过系统调用少的方法收集到我们需要数据,一般来说我们优先使用python自带的系统方法,然后是读取/proc 文件 ...

  6. Linux中TTY是什么意思

    终端是一种字符型设备,它有多种类型,通常使用tty来简称各种类型的终端设备.tty是Teletype的缩写.Teletype是最早出现的一种终端 设备,很象电传打字机(或者说就是),是由Telety ...

  7. perl第三章 列表和数组

    访问数组中的元素    $fred[0]   $fred[1] $number=2.75; print $fred[$number-1]  结果就是print $fred[1] 特殊的数组索引1.对索 ...

  8. 九度oj 1003

    前几天开刷九度oj,准备把做的题都放上,先放1003 题目1003:A+B             时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:16923 解决:7029 题目描述: 给 ...

  9. 【bzoj4260】Codechef REBXOR Trie树

    题目描述 输入 输入数据的第一行包含一个整数N,表示数组中的元素个数. 第二行包含N个整数A1,A2,…,AN. 输出 输出一行包含给定表达式可能的最大值. 样例输入 5 1 2 3 1 2 样例输出 ...

  10. hdu5852 Intersection is not allowed! 【矩阵行列式】

    题意 给出\(n*n\)网格\((n<=10^5)\) 顶部有\(K\)个起点,底部有\(K\)个相对应的终点 每次只能向下或向右走 求有多少种从各个起点出发到达对应终点且路径不相交的路径? 对 ...