1:x名称空间里的成员是专门写给xaml编译器看,用来引导xaml编译器把xaml代码编译成CLR代码的。(x仅仅是xaml的首字母)。 编程
2:attribute 是语言层面的东西,是给编译器看的,Property是面向对象层面的东西,是给编程逻辑用的。在使用xaml编程的时候,若是你想给他加上一些特殊的标记从而影响xaml编译器对他的解析,这时候就须要额外为他添加一些attribute。 好比你想告诉xaml编译器将编译结果与那个c#编译的类合并,这时候就必须为这个标签添加x:Class="目标类名"这样一个attribute以告知xaml编译器。x:class这个attribute并非对象成员,而是咱们把它从X名称空间里拿出来硬贴上去的。c#
3:X:Name‘当一个标签带有X:Name时除了为这个标签生成对应的实例外还要为这个实例声明一个引用变量,变量名就是X:Name的值。’对象
4:x:FieldModifier ‘就是用来在xaml里改变引用变量访问级别的。 例: <stackPanel> <textbox x:Name="txtname" x:FieldModifier="public" Margin="5"/> </stackPanel>索引
5:x:key的做用就是为资源贴上用于检索的索引。把对象当作资源放进资源字典里面,在把他们检索出来重复使用。能够经过FindResource的方式来搜索资源
6:x:Shared ,x:shared要和x:key配合使用。x:shared=true 说明检索到的对象是同一个对象。若是为FALSE 说明,咱们获得的是这个对象的副本,默认状况下XAML编译器会为资源隐藏添加x:shared=true。默认获得的是同一个对象。文档
7,x:type,x:null编译器
8.x:Array:经过它的items属性向使用者暴漏一个类型已知的ArrayLIST实例,arratlist内部成员的类型由x:Array的type指明it
<ListBox Margin="5" ItemsSource="{x:Array Type=sys:String}"/> <ListBox Margin="5"> <ListBox.ItemsSource> <x:Array Type="sys:String"> <sys:String>Tim</sys:String> <sys:String>Tom</sys:String> <sys:String>Victor</sys:String> </x:Array> </ListBox.ItemsSource>编译
9. x:Static 在xaml文档中使用数据类型的static成员,由于XAML不能编写逻辑代码 class