WPF中有很多功能是非常好用的,可以帮助我们轻松的实现各种基于图形界面的需求。在这里我们将会了解到有关WPF文字布局的相关方法。#t#
WPF文字布局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>
WPF文字布局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是居中对齐。
WPF文字布局3.TextFlow 功能比TextBlock强大,提供了5个内嵌的容器标签:
1)Paragraph
2)List
3)Table
4)Floater
5)Figure
粗粗看了一遍这5个容器,没什么意思,无非是Word中的5种WPF文字布局方案的迁移,而且,微软白皮书说,TextBlock的效率比TextFlow高很多,尽量必要用后者。