x命名空间的元素分为Attribute、标记扩展和XAML指令元素三类。
名称 | 解释 |
---|---|
x:Class | 要求编译器将xaml标签的编译结果与后台代码中指定类合并。1.只能用于根节点;2.值要与标签类型一致,比如,那pxy.MainWindow应该是Window的派生类;3.值对应的指定类应该是partial声明的。 |
x:ClassModifier | 告诉编译器由标签编译生成的类是何种访问控制级别。1.该标签必须具有x:Class Attribute;2.其值要跟x:Class指示的类访问控制级别一致;3.值参考TypeAttributes |
x:Name | 1.用来引用标签对应的对象;2.设置标签对应对象的Name属性(如果有的话,Name和x:Name效果一样,只要不同时出现在一个标签里) |
x:FieldModifier | 使用了x:Name后,xaml标签对应的实例就有了自己的引用变量(类的字段)。x:FieldModifier用来改变引用变量的访问级别。默认internal。例如 |
x:Key | 使用资源词典时,用key检索。 |
x:Shared | 一定要跟x:Key配合使用。x:Shared为true时,表示每次检索都是同一个对象,否则得到的是对象的新副本。默认(隐藏)情况下是true的。 |
x:Name示例
改成下面这样即可展示名字。
<TextBox Text="hh" x:Name="hello"/>
x:Key示例
cs里这样写。下一个例子把资源移到文件中。
把资源放在额外的字典中
Page1.xaml
首先在头部绑定字典:
在Dictionary1.xaml中添加:其中xmlns:sys这行比较重要。。这样即可顺利引用到字符
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib">
<sys:String x:Key="str">字符</sys:String>
<sys:Double x:Key="pi">3.1415926</sys:Double>
</ResourceDictionary>