BindingBase.StringFormat Propriedade

Definição

Obtém ou define uma cadeia de caracteres que especifica como formatar a associação se ela exibir o valor associado como uma cadeia de caracteres.

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

Valor da propriedade

String

Uma cadeia de caracteres que especifica como formatar a associação se ela exibir o valor associado como uma cadeia de caracteres.

Exemplos

O exemplo a seguir usa a StringFormat propriedade para converter Price, que é um Double, em uma cadeia de caracteres que representa uma moeda.

<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>

O exemplo a seguir usa a StringFormat propriedade em um MultiBinding para criar uma cadeia de caracteres que inclui o Description e Price de cada item em um 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>

Comentários

StringFormat pode ser um formato de cadeia de caracteres predefinido, composto ou personalizado. Para obter mais informações sobre formatos de cadeia de caracteres, consulte Formatação de Tipos.

Se você definir as propriedades e StringFormat o Converter conversor será aplicado primeiro ao valor de dados e, em seguida, será StringFormat aplicado.

Ao definir em StringFormat um formato de Binding cadeia de caracteres composta, você pode especificar apenas um parâmetro.

Quando você usa um MultiBinding, a StringFormat propriedade só se aplica quando ela é definida no MultiBinding. O valor disso StringFormat é definido em qualquer objeto filho Binding é ignorado. O número de parâmetros em um formato de cadeia de caracteres composta não pode exceder o número de objetos filho Binding no MultiBinding.

Quando você usa um PriorityBinding, você pode definir o StringFormat PriorityBindingno , em objetos de associação filho, ou ambos. Se o StringFormat valor for definido na associação filho aplicada, esse valor será usado. Se não StringFormat estiver definido na associação filho aplicada, o StringFormat PriorityBinding valor será aplicado se ele estiver definido.

Se a cadeia de caracteres de formato começar com o { caractere, o analisador XAML o confundirá com uma extensão de marcação. Para evitar essa ambiguidade, prefixe a cadeia de caracteres de formato com um conjunto vazio de chaves.

Aplica-se a