Ce ne sono di vari Inline
elementi che possono aiutare, per le semplici opzioni di formattazione che è possibile utilizzare Bold
, Italic
e Underline
:
<TextBlock>
Sample text with <Bold>bold</Bold>, <Italic>italic</Italic> and <Underline>underlined</Underline> words.
</TextBlock>
Penso che valga la pena notare che questi elementi sono in realtà solo scorciatoie per Span
elementi con varie proprietà impostate (cioè: per Bold
, la FontWeight
proprietà è impostata su FontWeights.Bold
).
Questo ci porta alla nostra prossima opzione: l' Span
elemento di cui sopra .
Puoi ottenere gli stessi effetti con questo elemento come sopra, ma ti vengono concesse ancora più possibilità; puoi impostare (tra le altre) Foreground
le Background
proprietà o :
<TextBlock>
Sample text with <Span FontWeight="Bold">bold</Span>, <Span FontStyle="Italic">italic</Span> and <Span TextDecorations="Underline">underlined</Span> words. <Span Foreground="Blue">Coloring</Span> <Span Foreground="Red">is</Span> <Span Background="Cyan">also</Span> <Span Foreground="Silver">possible</Span>.
</TextBlock>
L' Span
elemento può contenere anche altri elementi come questo:
<TextBlock>
<Span FontStyle="Italic">Italic <Span Background="Yellow">text</Span> with some <Span Foreground="Blue">coloring</Span>.</Span>
</TextBlock>
C'è un altro elemento, che è abbastanza simile a Span
, si chiama Run
. Il Run
non può contenere altri elementi inline mentre ilSpan
barattolo, ma si può facilmente associare una variabile al Run
's Text
di proprietà:
<TextBlock>
Username: <Run FontWeight="Bold" Text="{Binding UserName}"/>
</TextBlock>
Inoltre, puoi eseguire l'intera formattazione dal code-behind se preferisci:
TextBlock tb = new TextBlock();
tb.Inlines.Add("Sample text with ");
tb.Inlines.Add(new Run("bold") { FontWeight = FontWeights.Bold });
tb.Inlines.Add(", ");
tb.Inlines.Add(new Run("italic ") { FontStyle = FontStyles.Italic });
tb.Inlines.Add("and ");
tb.Inlines.Add(new Run("underlined") { TextDecorations = TextDecorations.Underline });
tb.Inlines.Add("words.");