【上位机——WPF】命名空间

发布于:2025-05-19 ⋅ 阅读:(18) ⋅ 点赞:(0)

概述

XAML命名空间实际上是XML命名空间概念的扩展。指定XAML命名空间的技术依赖于XML命名空间语法、使用URL作为命名空间标识符的约定,使用前缀提供从同一标记源中引用多个命名空间的方法,诸如此类,XML命名空间的XAML定义中增加的主要概念是:XAML命名空间既暗指标记用法的唯一范围,也影响特定CLR命名空间和引用的程序集对标记实体的潜在支持方式。

Attribute

Attribute是语言层面的东西,是给XAML编译器看的,Property是面向对象层面的东西,是给编程逻辑用的。在使用XAML编程的时候,如果你想给他加上一些特殊的标记从而影响XAML编译器对他的解析,那么就要对他添加一些Attribute。

常用的一些Attribute

  1. x:Class:这个Attribute主要告诉XAML编译器,编译的XAML将和哪一个类合并。使用x:Class要注意,这个Attribute只能用于根节点,指向的类必须使用关键字partial
  2. x:ClassModifier:这个Attribute主要告诉XAML编译器,有标签编译生成的类具有怎样的访问控制级别
  3. x:Name:这个就如Winform中的Name、Html中的ID一样
  4. x:FieldModifier:这个就是用来在XAML里改变引用变量访问级别的
  5. x:Key:在XAML文件中,我们可以把很多需要多次使用的内容提取出来放在资源字典中,需要用到的时候就用这个Key把它检索出来
  6. x:Shared:默认为true,我们得到的是同一个对象,如果是false,那么我们得到的是这个对象的一个新副本

标记扩展
标记扩展实际就是一些MarkupExtension类的直接或间接派生类,x名称空间中就包含一些这样的类,所以称其为x名称空间标签的标记扩展。

  1. x:Type:x:Type的值是一个数据类型的名称,编程中也会用到数据类型本身
  2. x:Null:在C#语言里,我们用null关键字来表示空值,在XAML里我们用x:Null来表示空值
  3. x:Array:这个的作用就是通过它的Items属性向使用者暴露一个类型已知的ArrayList实例,ArrayList的成员类型由x:Array的Type指明
  4. x:Static:在XAML文档中使用数据类型的static成员

XAML指令元素

  1. x:Code:可以将逻辑代码放到XAML中运行
  2. x:XData:数据源,在该标签内的内容可以作为数据源使用