VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 网站开发 > css >
  • xaml教程之标记扩展

标记扩展

XAML 定义了一个标记扩展编程实体,该实体允许从 XAML 处理器对字符串特性值或对象元素的常规处理中进行转义,并将处理转交给后备类。在使用特性语法时,标识 XAML 处理器的标记扩展的字符是左大括号 ({),后接右大括号 (}) 以外的任何字符。左大括号后面的第一个字符串必须引用用来提供特定扩展行为的类,如果子字符串“Extension”是实际类名的一部分,则该引用可以省略这个子字符串。该类后面可能会出现一个空格,该空格后面的每个字符都可以由所实现的扩展用作输入,直到遇到右大括号。
.NET XAML 实现使用 MarkupExtension 抽象类作为 WPF 以及所有其他框架或技术支持的所有标记扩展的基础。 WPF 特定实现的标记扩展通常用于提供一种方法来引用其他已经存在的对象,或者对将在运行时计算的对象进行延迟引用。例如,通过指定用 {Binding} 标记扩展代替特定属性通常将采用的值,从而实现简单的 WPF 数据绑定。 对于无法以其他方式使用特性语法的属性,许多 WPF 标记扩展都允许使用特性语法。例如, Style 对象是一种相对复杂的类型,其中包含一系列嵌套的对象和属性。 WPF 中的样式通常定义为ResourceDictionary 中的资源,之后将通过请求资源的两个 WPF 标记扩展之一来引用。 标记扩展将属性值的计算推迟到查找资源时进行,并允许在特性语法中提供 Style 属性的值并采用 Style 类型,如下例所示:
<Button Style="{StaticResource MyStyle}">My button</Button>
在这里, StaticResource 用来标识 StaticResourceExtension 类,该类提供标记扩展实现。 下一个字符串 MyStyle 用作非默认 StaticResourceExtension 构造函数的输入,在该构造函数中,从扩展字符串提取的参数将声明所请求的 ResourceKey。 MyStyle 应当是定义为资源的 Style 的 x:Key 值。 StaticResource 标记扩展用法要求使用该资源,在加载时通过静态资源查找逻辑来提供 Style 属性值。
有关标记扩展的更多信息,请参见 标记扩展和 WPF XAML。 有关常规 .NET XAML 实现中启用的标记扩展和其他 XAML 编程功能的参考,请参见 XAML 命名空间 (x:) 语言功能。 有关特定于 WPF 的标记扩展,请参见 WPF XAML 扩展。

相关教程