VB.net 2010 視頻教程 VB.net 2010 視頻教程 VB.net 2010 視頻教程
SQL Server 2008 視頻教程 c#入門經典教程 Visual Basic從門到精通視頻教程
當前位置:
魔兽世界wow > 網站開發 > css >
  • xaml教程之標記擴展

  • 2017-04-11 13:37 來源:未知

標記擴展

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 擴展。
相關教程