共用方式為


{} 逸出序列 / 標記延伸

提供屬性值的 XAML 逸出序列。 逸出序列可讓屬性中的後續值解譯為常值。

XAML 屬性使用方式

<object property="{}literalValue" .../>

XAML 屬性項目使用方式

<object>
  <object.property>
    {}literalValue
  </object.property>
</object>

XAML 值

literalValue

逸出序列後面跟隨的常值字串。 這個字串通常包含左邊或右邊大括號 ({ 或 })。

備註

使用逸出序列 ({}) 是要讓左邊大括號 ({) 當做 XAML 中的常值字元使用。

XAML 讀取器通常會使用左大括號 ({) 表示標記擴充的進入點,但是這些讀取器首先會檢查下一個字元以判斷其是否為右大括號 (})。 只有當兩個大括弧 ({}) 相鄰時,才會被視為逸出序列。

如果遇到逸出序列,XAML 讀取器應會將剩下的字串視為字串處理。 但是,如果逸出序列套用於含有類型轉換器的成員,字串依然有可能在由 XAML 寫入器解譯時,進行型別轉換子轉換。

逸出序列不是標記延伸,類別並不支援這個用法。 但是,遵從 xaml 讀取器 (包括自訂的 XAML 讀取器) 是慣例。

引號 (") 不可以這種方式作為逸出序列。 如果需要將引號設定為非內容屬性的屬性值,請使用屬性項目語法,並將引號當做字串放入屬性項目中,或者使用 XML 字元實體。 若為內容屬性,引號可當做整個內容。

當指定 XML 型別,而此型別必須在 XAML 標記延伸可能會出現的位置包含命名空間限定詞時,就經常需要使用逸出序列 ({})。 這包括 XAML 屬性值的開頭,以及標記延伸內緊接在等號 (=) 後面的位置。 下列範例顯示出現在 XAML 屬性值開頭之 XML 命名空間的逸出序列。

<StackPanel Name="stacky">
  <StackPanel.Resources>
    <DataTemplate DataType="{}{http://planetsNS}Planet" >
      <StackPanel Orientation="Horizontal">
        <TextBlock Width="100" Text="{Binding Path=Element[{http://planetsNS}DiameterKM].Value}" />
        <TextBlock Width="100" Text="{Binding Path=Attribute[Name].Value}" />
        <TextBlock Text="{Binding Path=Element[{http://planetsNS}Details].Value}" /> 
      </StackPanel>
    </DataTemplate>
  </StackPanel.Resources>

請參閱

參考

XML 字元實體和 XAML

其他資源

XAML 的型別轉換子和標記延伸