[This topic is pre-release documentation and is subject to change in future releases. Blank topics are included as placeholders.] XAML 语法简介
本文介绍了如何使用几种不同的方法在XAML中创建对象和设置他们的属性。
主题包括以下几个部分: 什么是XAML? 声明对象 设置属性 其他相关主题 什么是XAML
XAML是一种陈述性语言。你可以使用XAML标记创建可视化的UI原件。 之后,你可以在一个单独的文件中使用JavasScript来操作你在XAML所声明的对象、响应一些事件。作为一种以XML为基础的陈述性语言,它创建界面时,从原型到产品的过程非常直观,尤其是对于有网页设计背景知识和技术的人。
XAML文件通常是以.xaml为后缀的XML文件。下面是一个典型的Silverlight XAML文件例子。.XAML <Canvas xmlns="http://schemas.microsoft.com/client/2007" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <Rectangle Width="100" Height="100" Fill="Blue" /> </Canvas>
声明对象
在XAML中,有以下几种方式声明对象和设置它们的属性:: Object element syntax: 使用开放的和封闭的标签来声明对象,就像XML一样。你可以使用这种方法来声明根元素和设置它们的属性值。 Attribute syntax: 使用内嵌来声明对象。你可以使用这种方法来设置一个属性的值。. Object element syntax
一种典型的使用Object element syntax来声明对象的方法。.首先你要创建两个XML元素标签: <objectName>
</objectName>
... objectName 是你想要实例化的对象的名字。下面的例子使用Object element syntax声明一个Canvas。XAML <Canvas> </Canvas>
一些对象, 比如Canvas, 可以包含其他对象。.XAML <Canvas> <Rectangle> </Rectangle> </Canvas>
为了方便,如果一个对象里不包含其他对象,那么可以只使用一个标签来描述它XAML <Canvas> <Rectangle /> </Canvas>
使用Attribute syntax声明对象 见下一部分, 设置属性, 获得更多有关attribute syntax的信息。 设置属性
使用 object element syntax,你可以在声明对象的时候设置它的属性. 在XAML中,有几种方法可以设置属性: 使用 attribute syntax, 或使用 property element syntax. 通过Attribute syntax设置属性
<objectNameproperty="propertyValue">
</objectName>
... property 是属性名称,你会将propertyValue 的值赋到它的身上。 下面的例子展示了如何使用attribute syntax 来设置一个Rectangle的Width, Height, 和 Fill .XAML <Canvas> <Rectangle Width="100"Height="100"Fill="Blue" /> </Canvas>
使用 Property Element Syntax设置属性
一些属性可以通过property element syntax来设置. 你通过创建XML elements来描述你想要的属性, 例如: <objectName>
<objectName.property>
<propertyValue ... />
</objectName.property>
</objectName>
... property 是属性名称,你会将propertyValue 的值赋到它的身上. 下面的例子展示了如何使用 property element syntax 来设置一个Rectangle的Fill ,使用a SolidColorBrush.XAML <Canvas> <Rectangle Width="100" Height="100"> <Rectangle.Fill> <SolidColorBrush /> </Rectangle.Fill> </Rectangle> </Canvas>
使用 Content Element Syntax设置属性
有时候,当一个属性支持element syntax,你可以忽略属性名,直接将属性值内嵌在对象标签里。这就是content element syntax. 下面的例子展示了怎样不指定 Text 属性,设置TextBlock的 Text 属性值 。XAML <TextBlock> Hello! &nbY\X[K[ X[II\Y X[ |
|