TabControl.ContentStringFormat Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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
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 Student
má Name
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.