Xaml语法概述
1.命名空间
    xmal每个元素都对应着一个类,但是在xmal中,只提供类名是不够的,需要知道该类实在.net的哪个命名空间下面.Xaml解析器才能够正确的解析.

 1 <Page
2 x:Class="App1.MainPage"
3 xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
4 xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
5 xmlns:local="using:App1"
6 xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
7 xmlns:mc="http://schemas.openxmlformats.org/markup-
8
9 compatibility/2006"
10 mc:Ignorable="d"
11 Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
12
13 <Grid x:Name="RootLayout">
14
15 </Grid>
16 </Page>

上面代码两个特殊的命名空间,该命名空间会在所有的xmal文档中都有
  A:xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  B: xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
A是WP的核心命名空间,包含了大部分用来构建界面的控件类.该命名空间的声明没有使用任何命名空间的前缀,所以它是整个文档的默认命名空间,所以没有前缀的元素都自动位于该命名空间下.
?:何为命名空间前缀

B是Xaml的命名空间,它包含Xmal的实用特性,这些特性影响文档的解释方式,这个命名空间具有映射前缀x,即,可以通过在元素名称之前放置命名空间前缀,来使用
命名空间,x:Name="RootLayout"

2.对象元素
xmal文档中 每一个 自闭合 或者 成对闭合的 标签都是一个对象

<Grid></Grid>  <Button/>

3.设置属性
xmal中的属性设置,有多种语法,但是并非全部都的属性设置都是通用的
  a.使用属性语法

   <Rectangle Name="Rectag" Height="100" Width="100" Fill="Blue"

HorizontalAlignment="Left"/>

  b.使用属性元素语法
对象.属性.  属性语法的前提 该属性必须也要是Xaml 的一个对象元素

 <Rectangle Name="Rec2" Height="100" Width="100"

HorizontalAlignment="Left">
<Rectangle.Fill>
<SolidColorBrush Color="Yellow"> </SolidColorBrush>
</Rectangle.Fill>
</Rectangle>

  c.使用内容元素语法

<Border>
<Button Content="Button"/>
</Border>

这种语法 给Border 对象设置了Child属性 也就是说 我们可以直接写出一个对象

来赋值另个对象的某些属性,但是只有特别的一些属性可以用这种内容元素语法,

比如元素的Child属性,Content属性

  d.使用集合语法
如果属性的值是一个集合,就需要用集合语法去设置该属性
c# add方法可以添加的属性集合

 <Rectangle Width="200" Height="150">
<Rectangle.Fill>
<LinearGradientBrush>
<GradientStopCollection>
<GradientStop Offset="0.0" Color="Coral"></GradientStop>
<GradientStop Offset="1.0" Color="Green"></GradientStop>
</GradientStopCollection>
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>

有些属性 既是集合属性 又是内容属性

4.附加属性

  <Canvas>
<Button Canvas.Left="50" Content="0.0"></Button>
</Canvas>

又叫做依赖属性 button 对象本来是没有Left属性的 ,但是该对象 放在Canvas布

局中 ,有了Canvas 的附加属性来设置 该对象在Canvas中的位置,即 所有Canvas

下面的对象 可以设置该属性的对象 都会有该依赖属性.

5.标记扩展

<StackPanel>
<TextBlock Text="{Binding Source={StaticResource my},Path=Per}"></TextBlock>
</StackPanel>

Binding(绑定)
StaticResource静态资源
TemplateBinding(模板绑定)
RelativeSource绑定关联源

Xaml语法概述及属性介绍的更多相关文章

  1. 基本 XAML 语法指南

    我们介绍了 XAML 语法规则,以及用于描述 XAML 语法中存在的限制或选项的术语.当出现以下情况时你会发现本主题很有用:不熟悉 XAML 语言的使用,希望加强对术语或某些语法部分的理解,或者对 X ...

  2. javascript运算符语法概述

    × 目录 [1]个数 [2]优先级 [3]结合性[4]类型[5]规则表 前面的话 javascript中的运算符大多由标点符号表示,少数由关键字表示,它们的语法言简意赅,它们的数量却着实不少.运算符始 ...

  3. MySQL 安装 启动 基本语法概述

    MySQL 安装 启动 基本语法概述 MySQL安装和配置 我是直接使用安装包:mysql-installer-community-5.6.10.1.msi 安装的时候其中有几点要注意: 1.记住端口 ...

  4. 4 WPF学习---系统的学习XAML语法

    转载:http://blog.csdn.net/fwj380891124/article/details/8093001 1,XAML文档的树形结构: UI在用户眼里面是个平面结构.如下图所示,在用户 ...

  5. Objective-C语法概述

    Objective-C语法概述 简称OC 面向对象的C语言 完全兼容C语言 可以在OC里面混入C/C++代码 可以开发IOS和Mac OS X平台应用 语法预览 关键字 基本上都是以@开头(为了与C语 ...

  6. XAML属性赋值转换之谜(WPF XAML语法解密)

    XAML与XML类似,就是XML延伸过来的.为了更好的表达一些功能,WPF对XML做了扩展,有些功能是WPF在后台悄悄的替你做了.有时候,虽然实现了某个功能,但是对实现原理还是很茫然.今天就讲讲XAM ...

  7. <关于JSP技术>运行机制及语法概述(附对本次同济校内ACM选拔赛决赛的吐槽)

    (一)JSP运行的机制 JSP是一种建立在Servlet规范功能之上的动态网页技术,它们都是在通常的网页文件中嵌入脚本代码,用于产生动态内容,不过和ASP不同的是JSP文件中嵌入的是Java代码和JS ...

  8. WPF中 PropertyPath XAML 语法

    原文:WPF中 PropertyPath XAML 语法 PropertyPath 对象支持复杂的内联XAML语法用来设置各种各样的属性,这些属性把PropertyPath类型作为它们的值.这篇文章讨 ...

  9. 深入浅出WPF-03.XAML语法

    2 XAML语法 树形结构,我们将整个XAML的结构想象成一棵树,我们从树的顶部向下看,形成俯视图.最上面的叶子节点会覆盖父节点,同级的子节点,后面的(也就是树的最上面)会覆盖前面的.覆盖包含了形状( ...

随机推荐

  1. 启动另外一个activity,并返回结果

    欢迎大家光临我的小店:http://clkk.taobao.com 大致步骤: 1.启动另外一个Activity,这里称子Activity: 2.子Activity通过setResult方法设置返回结 ...

  2. MongoDB Long/Int(长整型)的自增长主键 解决方案

    今朝有幸尝芒果,发现自增长ID类型有多种,唯独没有Long/Int. 一思路:1. 自建一个Collection(表,假设名为:IdentityEntity,其中字段:_id, Key, Value, ...

  3. [ERROR] Failed to open log

    版本:5.5.14 性能测试部-测试环境数据库 1.在性能测试过程中大量的日志,测试人员直接使用 rm -rf 删除所有 2.重启数据库时,出现报错,导致数据库无法启动,查看报错日志,报错信息如下: ...

  4. oracle 子查询因子化 浅谈(with的使用)

    近来学习oracle,想要提高自己所写语句的效率和易读性,今天的笔记是关于子查询因子话这么一个东西 因子化的查询不一定可以提高效率,但是一定可以再提高程序的可读性方面成效显著 --with 语句 wi ...

  5. 利用iOS API编写简单微博客户端全过程

    要编写社交网络客户端程序,可以大体上分为4个主要的步骤 下面我们按照这个流程,介绍一下: 1.引入Accounts和Social框架 工 程中需要引入Accounts和Social框架,Account ...

  6. ASP.NET 运行机制

    原本今天打算继续写ASP.NET MVC第四天的.但是由于里面涉及到asp.net运行机制的原理,如果不分析一下这里,mvc想说清楚还是挺困难的.既然要提到asp.net运行机制,所以打算还是说详细一 ...

  7. Wireshark 入门

    1.过滤目的地是百度的IP包. 百度的ip: 命令:ip.src eq 61.135.169.125 过滤ip来源是61.135.169.125 ip.dst eq 61.135.169.125 过滤 ...

  8. Most People Aren’t.

    Most people want to be fit, most people aren't. Most people want to build a successful business, mos ...

  9. 开发中/listfile.jsp(11,31) quote symbol expected 这个错误

    可能是因为11行33列,少了一个引号.

  10. 在云服务器搭建WordPress博客(二)使用xampp并解决端口冲突问题

    要搭建一台外界可以访问的服务器,就必须有对应的服务器环境.在这里我用的xampp集成环境(我是菜鸟级......),xampp集成了PHP+Apache+MySQL+perl,安装方便,不用再特意去设 ...