มีหลายที่มีInline
องค์ประกอบที่สามารถช่วยให้คุณสำหรับการจัดรูปแบบที่ง่ายที่สุดในตัวเลือกที่คุณสามารถใช้Bold
, Italic
และUnderline
:
<TextBlock>
Sample text with <Bold>bold</Bold>, <Italic>italic</Italic> and <Underline>underlined</Underline> words.
</TextBlock>
ฉันคิดว่ามันเป็นมูลค่า noting ว่าองค์ประกอบเหล่านั้นในความเป็นจริงเพียง shorthands สำหรับSpan
องค์ประกอบที่มีคุณสมบัติต่างๆที่กำหนด (เช่น: สำหรับBold
การFontWeight
ตั้งค่าคุณสมบัติFontWeights.Bold
)
สิ่งนี้นำเราไปสู่ตัวเลือกถัดไปของเรา: Span
องค์ประกอบดังกล่าว
คุณสามารถบรรลุเอฟเฟกต์เดียวกันกับองค์ประกอบนี้ด้านบน แต่คุณจะได้รับความเป็นไปได้มากขึ้น คุณสามารถตั้งค่า (ในหมู่คนอื่น ๆ ) Foreground
หรือBackground
คุณสมบัติ:
<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>
Span
องค์ประกอบก็อาจจะมีองค์ประกอบอื่น ๆ เช่นนี้
<TextBlock>
<Span FontStyle="Italic">Italic <Span Background="Yellow">text</Span> with some <Span Foreground="Blue">coloring</Span>.</Span>
</TextBlock>
มีองค์ประกอบอื่นซึ่งค่อนข้างคล้ายกับเป็นก็จะเรียกว่าSpan
ไม่สามารถมีองค์ประกอบแบบอินไลน์อื่น ๆ ในขณะที่สามารถ แต่คุณสามารถได้อย่างง่ายดายผูกตัวแปรที่'s ทรัพย์สิน:Run
Run
Span
Run
Text
<TextBlock>
Username: <Run FontWeight="Bold" Text="{Binding UserName}"/>
</TextBlock>
นอกจากนี้คุณสามารถจัดรูปแบบทั้งหมดจากโค้ดด้านหลังได้หากต้องการ:
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.");