XAML 標記延伸
XAML 標記延伸可藉由允許從常值文字字串以外的來源設定元素屬性,來擴充 XAML 的功能和彈性。
例如,您通常會設定 Color
如下的 BoxView
屬性:
<BoxView Color="Blue" />
或者,您可以將它設定為十六進位 RGB 色彩值:
<BoxView Color="#FF0080" />
在任一情況下,設定為 屬性的Color
文字字串會由 ColorTypeConverter
類別轉換成Color
值。
您可以改為從儲存在資源字典中的值,或從您所建立類別的靜態屬性值,或從頁面上另一個元素類型的Color
屬性,或從個別色調、飽和度和亮度值建構的屬性,來設定Color
屬性。
所有這些選項都可以使用 XAML 標記延伸。 但是不要讓片語「標記延伸」嚇到您:XAML 標記延伸 不是 XML 的延伸。 即使使用 XAML 標記延伸,XAML 一律是合法的 XML。
標記延伸實際上只是表達元素屬性的不同方式。 XAML 標記延伸通常是由大括弧括住的屬性設定來識別:
<BoxView Color="{StaticResource themeColor}" />
大括弧中的任何屬性設定一律是 XAML 標記延伸。 不過,如您所見,XAML 標記延伸也可以在不使用大括弧的情況下參考。
本文分為兩個部分:
使用 XAML 標記延伸
使用 中 Xamarin.Forms定義的 XAML 標記延伸。
建立 XAML 標記延伸
撰寫您自己的自訂 XAML 標記延伸。