Xaml语法概述及属性介绍

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绑定关联源

时间: 2024-10-14 22:33:48

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

WPF学习------XAML 语法详述

XAML 语言规范 XAML 语言规范中也定义或引用了此处定义的 XAML 语法术语. XAML 是一种基于 XML 并遵循或扩展 XML 结构规则的语言. 其中某些术语共享自或基于描述 XML 语言或 XML 文档对象模型时常用的术语. 有关 XAML 语言规范的更多信息,请从 Microsoft 下载中心下载 [MS-XAML]. XAML 和 CLR XAML 是一种标记语言. 顾名思义,公共语言运行时 (CLR) 实现了运行时执行. XAML 本身并非 CLR 运行时直接使用的一种公共语

基本 XAML 语法指南

我们介绍了 XAML 语法规则,以及用于描述 XAML 语法中存在的限制或选项的术语.当出现以下情况时你会发现本主题很有用:不熟悉 XAML 语言的使用,希望加强对术语或某些语法部分的理解,或者对 XAML 语言的工作原理感兴趣,因而希望了解更多背景知识. XAML 是 XML XAML 的基本语法基于 XML,且定义有效的 XAML 必须也是有效的 XML.但是,XAML 也有自己的用来扩展 XAML 的语法概念.给定的 XML 实体可能在纯 XML 中有效,但该语法在 XAML 中可能具有不

js语法概述

# 语法概述 ## JavaScript的引入方式 1. 直接在`script`标签内部书写代码 ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <script type="text/javascript"> console.log('hello, world'); </s

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

(一)JSP运行的机制 JSP是一种建立在Servlet规范功能之上的动态网页技术,它们都是在通常的网页文件中嵌入脚本代码,用于产生动态内容,不过和ASP不同的是JSP文件中嵌入的是Java代码和JSP标记.其实JSP文件在用户第一次请求的时候会被编译成Servlet,然后再由这个Servlet处理用户的请求,所以JSP也可以看成是运行时的Servlet,模糊地将JSP和Servlet是同一个东西.但是他们之间的区别又有哪些呢? 1.Servlet是Java对于CGI的回应(Common Gat

一、Swift 语法概述

Swift是Apple最新推出的语言,用于编写iOS和OS X程序,与C语言和Objective-C兼容.本系列的文章中的一些例子,都来自于苹果官方的GUIDE: The Swift Programming Language,有兴趣的同学可以去苹果的官网下载英文原版的iBook. 一.Hello world Swift中不需要main函数,也不需要用;分开每一行的语句,一个简单的Hello world如下所示: println("Hello, world") 二.赋值 使用let来创建

WPF中 PropertyPath XAML 语法

原文:WPF中 PropertyPath XAML 语法 PropertyPath 对象支持复杂的内联XAML语法用来设置各种各样的属性,这些属性把PropertyPath类型作为它们的值.这篇文章讨论PropertyPath用在绑定和动画中的语法. PropertyPath用在哪里 PropertyPath是一个公共对象可以用在WPF的几个特性中.虽然公共PropertyPath用来传递属性信息,但是在不同的特性中,PropertyPath的用法是不同的.因此,在不同的特性中讲解Propert

《深入浅出WPF》学习笔记之系统学习XAML语法

XAML是WPF技术中专门用于设计UI的语言,设计师直接使用XAML设计界面,设计完成后输出XAML代码交给程序员直接使用. XAML是一种由XML派生而来的语言,所以会继承XML中的一些概念. 命名空间: 命名空间为避免标签的名称冲突而出现,可以把来自不同程序集中的类映射到自定义的命名空间前缀,使用语法xmlns[:可选的映射前缀]="名称空间和程序集".没有映射前缀的命名空间为默认命名空间,默认命名空间只能有一个.命名空间映射一般写在根标签上. 标签与运行时对象的关系: 在XAML

黑马程序员 00-OC基本语法概述

1.OC简介 Objectuve-C 简称OC,其中Objective是面向对象的意思,即面向对象C. C语言的基础上,增加了一层最小的面向对象的方法(保留了面向对象语法的精华部分) 完全兼容C语言 以下代码写在OC源文件(.m文件)中,说明OC程序完全兼容C语言 #include <stdio.h> // OC程序的入口:main函数 // OC程序完全兼容C语言 int main(intargc, const char* argv[]) { printf("第1个OC程序\n&q

XAML语法之拉菲平台出租数据绑定及MVVM

1.数据绑定:即拉菲平台出租haozbbs.comQ1446595067 将两个对象绑定到一起,一个发生变化另一个也会改变 数据绑定包括两部分:数据源和目标绑定属性,要求目标对象派生自BindableObject.数据绑定包括两个步骤: 1)BindingContext绑定数据源对象 2)Binding绑定数据源对象的相应属性 1.1View-View之间绑定 <ContentPage xmlns="http://xamarin.com/schemas/2014/forms" x