Поделиться через


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

Значение свойства

Строка, указывающая, как отформатировать привязку, если она отображает привязанное значение в виде строки.

Примеры

В следующем примере свойство используется 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 и Price каждый элемент в объекте ListBox.

<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 применяется.

При установке StringFormatBinding в составном формате строки можно указать только один параметр.

При использовании MultiBindingсвойства применяется только в том случае, StringFormat если он установлен в объекте MultiBinding. Значение, заданное StringFormat для любых дочерних Binding объектов, игнорируется. Число параметров в составном строковом формате не может превышать число дочерних Binding объектов в объекте MultiBinding.

При использовании PriorityBindingможно задать StringFormatPriorityBindingдля объектов привязки дочерних объектов или обоих объектов. StringFormat Если задано в дочерней привязке, которая применяется, используется это значение. StringFormat Если он не задан для дочерней привязки, применяемой, StringFormatPriorityBinding применяется, если она задана.

Если строка форматирования начинается с символа { , средство синтаксического анализа XAML спутает его с расширением разметки. Чтобы избежать неоднозначности, префиксируйте строку формата с пустым набором фигурных фигурных скобок.

Применяется к