BindingBase.StringFormat Propriedade

Definição

Recebe ou define uma cadeia que especifica como formatar a ligação se mostrar o valor da ligação como uma cadeia.

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

Uma cadeia que especifica como formatar a ligação se mostrar o valor da ligação como uma cadeia.

Exemplos

O exemplo seguinte usa a StringFormat propriedade para converter Price, que é um Double, numa cadeia 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 seguinte usa a StringFormat propriedade em a MultiBinding para construir uma cadeia que inclua o Description e Price de cada item de 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>

Observações

StringFormat pode ser um formato de string pré-definido, composto ou personalizado. Para mais informações sobre formatos de string, consulte Tipos de Formatação.

Se definires as Converter propriedades e StringFormat , o conversor é aplicado primeiro ao valor dos dados, e depois aplica-se o StringFormat .

Quando defines o StringFormat on a Binding para um formato de string composto, podes especificar apenas um parâmetro.

Quando se usa um MultiBinding, a StringFormat propriedade aplica-se apenas quando está definida no MultiBinding. O valor que StringFormat está definido em quaisquer objetos filhos Binding é ignorado. O número de parâmetros num formato de cadeia composta não pode exceder o número de objetos filhos Binding no MultiBinding.

Quando usa um PriorityBinding, pode definir o StringFormat no PriorityBinding, em objetos de ligação filhos, ou ambos. Se o StringFormat for definido na ligação ao filho aplicada, esse valor é usado. Se o StringFormat não for definido na ligação filha aplicada, o StringFormat de PriorityBinding é aplicado se for definido.

Se a string de formato começar com o { carácter, o parser XAML irá confundi-lo com uma extensão de marcação. Para evitar esta ambiguidade, prefixe a cadeia de formato com um conjunto vazio de colchetes enrolados.

Aplica-se a