C#中x名称空间包含的工具及其作用

时间:2021-09-20 06:41:48

在x名称空间下包含三种类型的工具:

一、Attribute类型的工具

二、标签扩展类型的工具

三、XAML指令元素类型的工具

一下列出x名称空间中包含的工具:

名称   种类  
x:Array   标签扩展  
x:Class   Attribute  
x:ClassModifier   Attribute  
x:Code   XAML指令元素  
x:FieldModifier   Attribute  
x:Key   Attribute  
x:Name   Attribute  
x:Null   标签扩展  
x:Share   Attribute  
x:Static   标签扩展  
x:SubClass   Attribute  
x:Type   标签扩展  
x:TypeArguments   Attribute  
x:Uid   Attribute  
x:XData  

XAML指令元素

 

x:Class

新建的WpfApplication中会有这样的XAML语句:x:Class="WpfApplication.MainWindow"。这是告诉XAML编译器编译的结果需要与后台中的Namespace为WpfApplication和MainWindow-Class结合。

使用

x:class要求如下:

x:class只能用于根节点;

x:class的根节点的类型要与具体的值类型一致;x:class的值的类型声明时必须使用partial关键字。

x:Name

首先,必须了解的是XAML是一种声明式语言,XAML标签声明的是对象,对象一般就是控件的实例。在.NET中,一般实例会对应一个引用变量,x:Name就起到了这样的作用。x:Name还有个作用,就是将XAML标签对应的对象Name属性(有的话)也设为x:Name的值。

根据上诉总结,x:Name两个作用

为XAML标签声明的实例声明一个引用变量。

将XAML标签对应的对象的Name属相设为x:Name的值。

x:FieldModifier

上述中用x:Name声明了引用变量了,既然是变量,那难免会要设置下访问级别。与C#一样,这些变量默认为internal。假如你想跨程序集去访问窗口中元素,这时需要把改窗口元素的引用变量访问级别声明了public。这就用到了x:FieldModifier。

使用方法:(使用前提:存在引用变量,即需要有x:Name。)

x:Array

x:Array是一个类型已知的ArrayList,ArrayList的类型是有x:Array的Type属性确定。

x:Static

x:Static作用是使用数据类型中的static成员。

  x:Share

x:Share与x:Key结合使用。使用x:Key时是否有这样的疑惑,用Key去多次检索资源中的对象,是否为同一个对象。这时就要x:Share决定了。

当x:Share的值为false时,每次用x:Key去检索这个对象都是不同的,都是这个对象的新副本;设为true,,则每次检索到同一个。默认值为true。

x:XData

x:XData是用在:在XAML中使用数据提供者(如XmlDataProvider)提供数据时。

x:Type

x:Type的值应该是一个Type的名称。Type,是指C#中所有数据类型在编程层面上的抽象。当需要在XAML中想表达某个数据类型是就需要用到x:Type了。

本人啥也不会,瞎拷着玩的