WPF笔记(2.7 文字布局)——Layout
这一节介绍的是文字布局的几个控件:
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高很多,尽量必要用后者。
WPF笔记(2.7 文字布局)——Layout的更多相关文章
- WPF笔记(2.8 常用的布局属性)——Layout
原文:WPF笔记(2.8 常用的布局属性)--Layout 这一节老没意思,啰里啰唆的尽是些HTML的属性,挑几个好玩的List出来,备忘:Padding与Margin的区别:Margin指控件边界与 ...
- WPF笔记(2.9和2.10)——Layout
原文:WPF笔记(2.9和2.10)--Layout 2.9讲的是,如果内部设定超过容器大小,怎么办?StackPanel会裁剪越界部分DockPanel和Grid会智能判断,从而决定换行. 2.10 ...
- WPF笔记(2.5 Canvas)——Layout
原文:WPF笔记(2.5 Canvas)--Layout Canvas是最精确的布局容器--绝对定位,此书作者不建议使用,以为控件的大小一般会随着内部字体图片的动态生成而自动变化,所以使用前三种布局是 ...
- WPF笔记(2.2 DockPanel)——Layout
原文:WPF笔记(2.2 DockPanel)--Layout 读完了这一节,发现DockPanel就是过去winform中的Dock属性.原来的Dock属性是子控件设置,而其父亲级别不用设置.现在W ...
- WPF笔记(2.3 StackPanel)——Layout
原文:WPF笔记(2.3 StackPanel)--Layout StackPanel用于小规模的排版布局,比如说一个局部下几个textbox和Button啦.Orientation属性有Vertic ...
- WPF笔记(2.6 ViewBox)——Layout
原文:WPF笔记(2.6 ViewBox)--Layout 在Canvas外面包一层ViewBox,可以使Canvas内的控件填充整个ViewBox,并随着ViewBox的大小变化而同步变化,这是因为 ...
- WPF笔记(2.4 Grid)——Layout
原文:WPF笔记(2.4 Grid)--Layout 第一章已经简单介绍过这个容器,这一节详细介绍.Grid一般是用表格(Grid.Row 和Grid.Column )的,比StackPanel更细致 ...
- WPF笔记(1.4 布局)——Hello,WPF!
原文:WPF笔记(1.4 布局)--Hello,WPF! 这一节只是第2章的引子.布局要使用Panel控件,有四种Panel,如下:DockPanel,就是设置停靠位置布局模型.StackPanel, ...
- Duilib源码分析(五)UI布局—Layout与各子控件
接下来,继续分析duilib之UI布局Layout,目前提供的布局有:VerticalLayout.HorizontalLayout.TileLayout.TabLayout.ChildLayout分 ...
随机推荐
- C51汇编伪指令
1.DS ---预留存储区命令格式: [标号:] DS 表达式值其功能是从指定地址开始,定义一个存储区,以备源程序使用.存储区预留的存储单元数由表达式的值决定. ;从标号TEP地址处开始保留1个存 ...
- MVC4+Springnet+Nhibernate学习系列随笔(一)
Springnet与asp.net mvc4集成大体步骤 1.首先要在MVC项目中引用的两个程序集(Spring.Web与Spring.Web.Mvc4) 集 2.修改MVC项目的Global.asa ...
- 转:关于rename命令ubuntu下的用法
下面是我的遭遇:上午想批量改几个文件的名字,觉得mv在批量方面不够方便,百度到了rename这个命令,原谅我吧,我总是在百度不到结果时才去看google,以后还是少去百度的好国内很多贴子都在说linu ...
- 【转】Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义
原文网址:http://dadekey.blog.51cto.com/107327/119938 我们先写一个简单的脚本,执行以后再解释各个变量的意义 # touch variable # vi ...
- c++ 04
一.this指针 1. 2.应用场景 1) 2)将this指针作为函数的参数.一个对象可以通知另一个对象有关自身的地址. 教师 提问|^ V|答案 学生 交叉类问题: class ...
- 【HDU1394】Minimum Inversion Number(线段树)
大意:n次操作原串查询逆序数,求出所有串中最小的逆序数. 求逆序数属于线段树的统计问题,建立空树,每次进行插点时进行一次query操作即可.n次操作可以套用结论:如果是0到n的排列,那么如果把第一个数 ...
- <转载>构造函数与拷贝构造函数
原文地址http://www.cnblogs.com/waynelu/archive/2012/07/01/2572264.html 构造函数 构造函数.析构函数与赋值函数是每个类最基本的函数. 对于 ...
- Javascript的性能瓶颈
Javascript是单线程的,它的性能瓶颈在于频繁的DOM操作, 因为每次操作都会使浏览器重新绘制一次. 其实纯JS的执行的速度是很快的,可以把元素都攒到一块,一次性放到页面中. 或者,定义一个延时 ...
- C#使用DirectoryEntry操作IIS创建网站和虚拟路径
原文:http://www.cnblogs.com/Aiooioo/archive/2011/05/30/cs-iis.html 在.Net中我们可以使用内置的类DirectoryEntry来承载II ...
- 1203.4——循环语句 之 for
for循环的一般形式为:for(表达式1; 表达式2; 表达式3){ 语句块} 它的执行过程如下:1) 先求解表达式1. 2) 求解表达式2,若其值为真(非0),则执行循环体,否则结束循环. 3 ...