BindingBase.StringFormat 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
如果將綁定值顯示為字串,則會取得或設定一個字串,指定如何格式化綁定。
public:
property System::String ^ StringFormat { System::String ^ get(); void set(System::String ^ value); };
public string StringFormat { get; set; }
member this.StringFormat : string with get, set
Public Property StringFormat As String
屬性值
一個字串,如果它以字串形式顯示綁定值,則指定如何格式化綁定。
範例
以下範例利用性質 StringFormat 將 Price轉換為 Double代表貨幣的字串。
<ListView ItemsSource="{StaticResource MyData}">
<ListView.View>
<GridView>
<GridViewColumn DisplayMemberBinding="{Binding Path=Description}"/>
<GridViewColumn DisplayMemberBinding="{Binding Path=Price, StringFormat=Now {0:c}!}"/>
</GridView>
</ListView.View>
</ListView>
以下範例利用 StringFormat 上的MultiBinding屬性來建立包含 Description 中每個項目 ListBox和 Price 的字串。
<ListBox ItemsSource="{StaticResource MyData}">
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock>
<TextBlock.Text>
<MultiBinding StringFormat="{}{0} -- Now only {1:C}!">
<Binding Path="Description"/>
<Binding Path="Price"/>
</MultiBinding>
</TextBlock.Text>
</TextBlock>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
備註
StringFormat 可以是預先定義的、複合的或自訂的字串格式。 欲了解更多字串格式資訊,請參閱 格式類型。
如果你設定了 Converter 和 StringFormat 屬性,轉換器會先套用到資料值,然後再套用 。StringFormat
當你將 on a Binding 設定StringFormat為複合字串格式時,你只能指定一個參數。
當你使用 時 MultiBinding,該 StringFormat 性質僅在設定於 MultiBinding時適用。 該值 StringFormat 設定在任何子 Binding 物件上都會被忽略。 複合字串格式中的參數數量不得超過子物件MultiBinding的數量Binding。
當你使用 時PriorityBinding,可以在子綁定物件上設定 ,PriorityBindingStringFormat或兩者皆可。 如果 是 StringFormat 被套用在子綁定上的,則會使用該值。 若 未 StringFormat 設定在所套用的子綁定上, StringFormat 則 的 PriorityBinding 若被設定,則套用。
如果格式字串以 { 字元開頭,XAML 解析器會將其誤認為標記擴充功能。 為避免此歧義,請在格式字串前加上一組空的大括號。