HeaderedContentControl.HeaderStringFormat Propriété

Définition

Obtient ou définit une chaîne composite qui spécifie la manière de mettre en forme la propriété Header si celle-ci s'affiche en tant que chaîne.

public:
 property System::String ^ HeaderStringFormat { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.Bindable(true)]
public string HeaderStringFormat { get; set; }
[<System.ComponentModel.Bindable(true)>]
member this.HeaderStringFormat : string with get, set
Public Property HeaderStringFormat As String

Valeur de propriété

Chaîne composite qui spécifie la manière de mettre en forme la propriété Header si celle-ci s'affiche en tant que chaîne. La valeur par défaut est null.

Attributs

Exemples

L’exemple suivant lie un TabControl à une collection d’objets Student . La Student classe a une Name propriété, une collection d’objets Course , et implémente la IFormattable.ToString méthode pour retourner le Name de l’étudiant ou une chaîne qui répertorie les cours de l’étudiant. L’exemple utilise HeaderStringFormat pour placer le nom d’un étudiant dans le Header de chacun TabItem (qui hérite de HeaderedContentControl) et le TabControl.ContentStringFormat pour afficher la liste des cours pour chaque étudiant dans le contenu du TabItem.

<Grid>
  <Grid.Resources>
    <src:Students x:Key="Students"/>

    <Style TargetType="TabItem">
      <Setter Property="HeaderStringFormat" Value="n"/>
      <Setter Property="FontFamily" Value="Lucida Sans Unicode"/>
      <Setter Property="Foreground" Value="Green"/>
      <Setter Property="FontWeight" Value="Bold"/>
    </Style>
  </Grid.Resources>

  <TabControl ItemsSource="{StaticResource Students}"
              FontFamily="Lucida Console" Foreground="Navy"
              ContentStringFormat="cl"/>
</Grid>

L’exemple suivant implémente la IFormattable.ToString méthode pour renvoyer le Name de l’étudiant ou une chaîne qui répertorie les cours de l’étudiant.

public string ToString(string format, IFormatProvider formatProvider)
{
    // 'n': print the name only.
    if (format == "n")
    {
        return Name;
    }

    // 'cl': print the course list.
    if (format == "cl")
    {
        string stringFormat = "{0,-25}{1,-30}{2,-10}\r\n";

        StringBuilder str = new StringBuilder();

        str.AppendLine(); 
        str.AppendFormat(stringFormat, "Title", "Description", "ID");
        str.AppendLine(); 

        foreach (Course c in Courses)
        {
            str.AppendFormat(stringFormat, c.Title, c.Description, c.SectionID);
        }

        return str.ToString();
    }

    return this.ToString();
}
Public Overloads Function ToString(ByVal format As String, ByVal formatProvider As IFormatProvider) As String Implements IFormattable.ToString
    ' 'n': print the name only.
    If format = "n" Then
        Return Name
    End If

    ' 'cl': print the course list.
    If format = "cl" Then
        Dim stringFormat As String = "{0,-25}{1,-30}{2,-10}" & vbCrLf

        Dim str As New StringBuilder()

        str.AppendLine()
        str.AppendFormat(stringFormat, "Title", "Description", "ID")
        str.AppendLine()

        For Each c As Course In Courses
            str.AppendFormat(stringFormat, c.Title, c.Description, c.SectionID)
        Next c

        Return str.ToString()
    End If

    Return Me.ToString()
End Function

Remarques

HeaderStringFormat peut être un format de chaîne prédéfini, composite ou personnalisé. Pour plus d’informations sur les formats de chaîne, consultez Mise en forme des types. Si vous définissez la HeaderTemplate propriété ou HeaderTemplateSelector d’un HeaderedContentControl, la HeaderStringFormat propriété est ignorée.

Informations sur les propriétés de dépendance

Champ Identificateur HeaderStringFormatProperty
Propriétés de métadonnées définies sur true Aucun

S’applique à