BindingBase.StringFormat 屬性

定義

取得或設定字串,這個字串指定繫結在其繫結值顯示成字串時的格式化方式。

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

屬性值

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>

下列範例會使用 上的 MultiBinding 屬性來建置字串,其中包含 DescriptionListBox 每個專案的 和 PriceStringFormat

<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 可以是預先定義的、複合或自訂字串格式。 如需字串格式的詳細資訊,請參閱 格式化類型

如果您設定 ConverterStringFormat 屬性,轉換器會先套用至資料值,然後再 StringFormat 套用 。

當您將 上的 Binding 設定 StringFormat 為複合字串格式時,您只能指定一個參數。

當您使用 MultiBinding 時, StringFormat 只有在 屬性設定于 時 MultiBinding 才會套用。 忽略在任何子 Binding 物件上設定的 StringFormat 值。 複合字串格式中的參數數目不能超過 中的 MultiBindingBinding 物件數目。

當您使用 PriorityBinding 時,可以在 、子系結物件或兩者上 PriorityBinding 設定 StringFormat 。 如果在套用的子系結上設定 , StringFormat 則會使用該值。 StringFormat如果未在套用的子系結上設定 , StringFormat 則會在設定 時套用 的 PriorityBinding

如果格式字串以 { 字元開頭,XAML 剖析器會將它與標記延伸混淆。 若要避免這種模棱兩可,請在格式字串前面加上一組空的大括弧。

適用於