這一節介紹的是文字布局的幾個控件:
1.TextBlock 最基本的文字控件
可以配置5個Font屬性。
TextWraping屬性,"Wrap"是換行,NoWrap是不換行(原書有誤,在此更正)。
TextBlock控件內可以放置很多控件,不光是文字。
<TextBlock TextWraping="Wrap">
<Button>Split</Button>
<CheckBox>across</CheckBox>
<TextBox>multiple</TextBox>
lines
</TextBlock>
AccessText,Bold,Hyperlink,Italic和Underline望文生義,Subscript和Superscript已經廢棄。 (AccessText沒有期望的效果)
<TextBlock FontSize="18">
<AccessText>T</AccessText>his <Italic>is</Italic> <Bold>rather</Bold>
<Underline>messy</Underline>. <Hyperlink>www.example.com</Hyperlink>
</TextBlock>
2. Text and Whitespace
這裡Whitespace指的是 回車符,就是說,TextBlock是將其忽略的,只有在TextBlock中設置了 xml:space="preserve" ,才會表現出來這個回車換行:
<TextBlock FontSize="18" xml:space="preserve">
<AccessText>T</AccessText>his <Italic>is</Italic> <Bold>rather</Bold>
<Underline>messy</Underline>. <Hyperlink>www.example.com</Hyperlink>
</TextBlock>
當然,一般不建議主動這麼做,除非你是直接copy一大段文章過來。
你或者可以把xml:space="preserve"只設置在 <Bold>rather</Bold>上,也能達到同樣 的效果。
設置TextAlignment="Left"/Right/Center/Justify屬性,可以控制TextBlock中文本對齊方式, Justify是居中對齊。
3.TextFlow 功能比TextBlock強大,提供了5個內嵌的容器標簽:
1)Paragraph
2)List
3)Table
4)Floater
5)Figure
粗粗看了一遍這5個容器,沒什麼意思,無非是Word中的5種布局方案的遷移,而且,微軟白皮書說, TextBlock的效率比TextFlow高很多,盡量必要用後者。