XML 元素,可以分成有内容的非空元素和没有内容的空元素,元素内容可以是文本串若干子元素。非空元素的一般格式为:
<元素名[ 属性名="属性值" 属性名="属性值" „„]> 元素内容 </元素名>
元素的一般格式为:
<元素名[ 属性名="属性值" 属性名="属性值" „„] />
XML文档中的注释格式为:
<!-- 注释内容(不含--的任意字符串) –>
事件的处理程序被定义在<x:Code>子元素的字符数据节 CDATA 中,CDATA中的内容不会被 XML解析器解析(但可被 XAML理解)。CDATA 的定义格式为:
<![CDATA[ 数据内容(不含]]>的任意字符串) ]]>
这种直接在XAML文件中嵌入处理代码的方式,并不是我们所推荐的。一般在 XAML文档中只有界面设计的内容,而真正的处理代码应该放在 WPF 程序的一个相关的部分 C# 类中。
静态标记扩展x:Static 的格式为:属性="{x:Static [前缀:]类型名.静态成员名}"
类型标记扩展x:Type 的格式为:属性="{x:Type [前缀:]类型名值}"
x:StaticExtension、x:TypeExtension、x:ArrayExtension 和 x:NullExtension分别为标记扩
展类类型x:Static、x:Type、x:Array和x:Null的完整限定名。
在application中,设置主窗口的XMAL应用为:
<Application StartupUri = "MainXaml.xaml" > </Application >
而自定义.net类的使用则使用命名空间,定义XML的别名:
代码自定义类person:
namespace XamlSpace { public class Person { ... } }
XAML UI定义中则命名别名:
<Window x:Xlass"XamlSpace.mainWindow" xmlns:local = " clr-namespace:XamlSpace" > <ListBox> <local:Person Firstname = "..." /> </ListBox> </Window>
也可以在AssemblyInfo.cs中定义.Net名称空间的别名,进而再进行调用:
[assembly :XmlnsDefinition( "http://www.wrox.com/shchen/2012", "XmalSpace" ) ]
<Window x:Xlass"XamlSpace.mainWindow" xmlns:local = "http://www.wrox.com/shchen/2012" > <ListBox> <local:Person Firstname = "..." /> </ListBox> </Window>