Sdílet prostřednictvím


TabControl.ContentStringFormat Vlastnost

Definice

Získá složený řetězec, který určuje, jak formátovat obsah TabItem objektů, pokud jsou zobrazeny jako řetězce.

public:
 property System::String ^ ContentStringFormat { System::String ^ get(); void set(System::String ^ value); };
public string ContentStringFormat { get; set; }
member this.ContentStringFormat : string with get, set
Public Property ContentStringFormat As String

Hodnota vlastnosti

String

Složený řetězec, který určuje, jak formátovat obsah TabItem objektů, pokud jsou zobrazeny jako řetězce.

Příklady

Následující příklad vytvoří TabControl vazbu na kolekci Student objektů. Třída StudentName vlastnost, kolekci Course objektů a implementuje IFormattable.ToString metodu pro vrácení Name studenta nebo řetězce, který obsahuje seznam kurzů studenta. Příklad používá HeaderedContentControl.HeaderStringFormat k vložení jména studenta do Header každého z nich TabItem (který dědí) HeaderedContentControla ContentStringFormat k zobrazení seznamu kurzů pro každého studenta v obsahu 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>

Následující příklad implementuje metodu IFormattable.ToString , která vrátí buď Name studenta, nebo řetězec, který obsahuje seznam kurzů studenta.

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

Poznámky

ContentStringFormat může být předdefinovaný, složený nebo vlastní formát řetězce. Další informace o formátech řetězců naleznete v tématu Typy formátování. Pokud nastavíte ContentTemplate hodnotu nebo ContentTemplateSelector hodnotu TabControl, ContentStringFormat vlastnost se ignoruje.

Platí pro