windows phone (19) 深入了解TextBlock
原文:windows phone (19) 深入了解TextBlock

一般用于显示文本的元素,我们最为经常用到的是该类的Text属性,其实显示文本有两种呈现方式,一个是设置内部文本Text,另一种就是在Inlines 集合中创建一个新的 Run 对象和LineBreak对象,我们称之为内联文本;【作者:神舟龍】
Run 标签内容成为 Text 属性的值,该类具有TextBlock类所具有的部分属性,比如FontFamily,FontSize,FontStretch,Foregroud等等;
LineBreak 新起一行,是换行标签
<Grid x:Name="ContentPanel" Grid.Row="" Margin="12,0,12,0"> <TextBlock x:Name="tbShow" Text="文字示例" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"> <TextBlock.Inlines> <Run Foreground="Blue" Text="ddd" ></Run> </TextBlock.Inlines> </TextBlock> </Grid>
可以看到我们在Run标签和TextBlock标签都设置的前景色和显示的文字,可是效果如何那,效果:

所以我们确定如果TextBlock标签和TextBlock标签内定义Run标签的属性相重复时,两者的属性互不相干,但是Run设置的显示文本在TextBlock属性Text之后,要把程序运行起来,设计器直接看会是这样的错误结果,

再看下面的例子,我们对Run标签的一些属性进行了一些罗列:
<!--ContentPanel - 在此处放置其他内容--> <Grid x:Name="ContentPanel" Grid.Row="" Margin="12,0,12,0"> <TextBlock x:Name="tbShow" Text="文字示例" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center"> <Run Foreground="Blue">前景色Blue</Run><LineBreak></LineBreak> <Run FontStyle="Italic">字体样式Italic</Run><LineBreak></LineBreak> <Run FontSize="">字体30</Run><LineBreak></LineBreak> <Run TextDecorations="Underline">下划线</Run><LineBreak></LineBreak> <Run TextDecorations="Underline" FontSize="" FontStyle="Italic" Foreground="Blue" Text="综合" ></Run><LineBreak></LineBreak> </TextBlock> </Grid>
实现的是这样的效果:

上面介绍到的是Inlines 集合的内联文本,这是说说TextBlock属性Text的一些特殊用法
案例代码:
<!--ContentPanel - 在此处放置其他内容--> <Grid x:Name="ContentPanel" Grid.Row="" Margin="12,0,12,0"> <TextBlock x:Name="tbShow" Foreground="White" VerticalAlignment="Center" HorizontalAlignment="Center" Text="π表示3.14" > </TextBlock> </Grid>
它实现的效果是:

还比如。表示句号(。),
表示回车,
表示换行,当然你可以看出格式都差不多,可以更改最后一个字母或数字看看变成什么,比如
也可以设置文本对齐方式,TextAlignment属性可以甚至为:left,right,center;
如果你在textblock设置了fontfamily属性,并且名字写错的话,不会造成什么后果,系统会使用默认的字体 ,但是从隐藏文件获取字体的话还是获取到的是错误字体;
MediaElement
表示的是播放媒体,目前支持mp4,wma,mp3,wmv(ps:我刚刚从优酷找到一个swf格式的不支持),MediaElement的属性AutoPlay属性默认为True,所以当视频缓冲到可以播放的时候,视频会自动播放
参考书上的地址设置了播放源,xaml代码如下
<!--ContentPanel - 在此处放置其他内容--> <Grid x:Name="ContentPanel" Background="AntiqueWhite" Grid.Row="" Margin="12,0,12,0"> <MediaElement Source="http://www.charlespetzold.com/Media/Walrus.wmv" ></MediaElement> </Grid>
在播放途中截图:

话说这就是Charles Petzold,不管怎样感谢他带给我们的知识,也可访问他本人的网站http://www.charlespetzold.com/
windows phone (19) 深入了解TextBlock的更多相关文章
- 背水一战 Windows 10 (19) - 绑定: TemplateBinding 绑定, 与 RelativeSource 绑定, 与 StaticResource 绑定
[源码下载] 背水一战 Windows 10 (19) - 绑定: TemplateBinding 绑定, 与 RelativeSource 绑定, 与 StaticResource 绑定 作者:we ...
- 与众不同 windows phone (19) - Device(设备)之陀螺仪传感器, Motion API
原文:与众不同 windows phone (19) - Device(设备)之陀螺仪传感器, Motion API [索引页][源码下载] 与众不同 windows phone (19) - Dev ...
- 不可或缺 Windows Native (19) - C++: 对象的动态创建和释放, 对象的赋值和复制, 静态属性和静态函数, 类模板
[源码下载] 不可或缺 Windows Native (19) - C++: 对象的动态创建和释放, 对象的赋值和复制, 静态属性和静态函数, 类模板 作者:webabcd 介绍不可或缺 Window ...
- 不可或缺 Windows Native 系列文章索引
[源码下载] 不可或缺 Windows Native 系列文章索引 作者:webabcd 1.不可或缺 Windows Native (1) - C 语言: hello c 介绍不可或缺 Window ...
- 重新想象 Windows 8.1 Store Apps (90) - 通信的新特性: 通过 HttpBaseProtocolFilter 实现 http 请求的缓存控制,以及 cookie 读写; 自定义 HttpFilter; 其他
[源码下载] 重新想象 Windows 8.1 Store Apps (90) - 通信的新特性: 通过 HttpBaseProtocolFilter 实现 http 请求的缓存控制,以及 cooki ...
- Windows 常用的运行命令
1. 打开程序 1) calc 计算器 2) notepad 记事本 3) write ...
- 在uwp中复活常用的vb库函数
这个博文是纯原创的,转载一定要说明作者是 Nukepayload2!! 在.Net Core 中,很多地方被精简了,有个重灾区就是vb语言库.从当初的囊括vb6库函数并且附带后期绑定到现在的几个函数加 ...
- 我(webabcd)的文章索引
[最后更新:2014.08.28] 重新想象 Windows Store Apps 系列文章 重新想象 Windows 8 Store Apps 系列文章 重新想象 Windows 8 Store A ...
- wpf 窗体翻页效果
点击设置翻页,取消翻回来 1.xaml <Window x:Class="_3D翻页动画.MainWindow" xmlns="http://schemas.mic ...
随机推荐
- OWAP Top 10
2013 Top 10 List A1-Injection Injection flaws, such as SQL, OS, and LDAP injection occur when untr ...
- Linux 高性能server编程——高级I/O函数
重定向dup和dup2函数 #include <unistd.h> int dup(int file_descriptor); int dup2(int file_descriptor_o ...
- NET Core RC2 and .NET Core SDK Preview
NET Core RC2 and .NET Core SDK Preview 先看一下 .NET Core(包含 ASP.NET Core)的路线图: Beta6: 2015年7月27日 Beta7: ...
- javascript实现的可改变滚动方向的无缝滚动
效果图如下: 代码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:// ...
- 出现异常 child->m_pParent == 0
在cocos2d-x中,能够用CCNode类 自己new一个节点(或是用CCnode::node().create()),当将它作为其它若干item(如button项.sprite项.image项)的 ...
- MySQL学习笔记之中的一个 MySQL入门
本人之前接触的关系型数据库主要是oracle和sqlserver,而对于mysql知之甚少,但查阅网上资料发现,mysql与oracle非常相似,所以学起来应该不会非常费劲,在总结的时候可能很多其它的 ...
- oracle数据库、客户端安装以及ps/sql连接和导入表实例
从下面的网址下载http://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-win32soft-098 ...
- 深入 理解 Statement 和 PreparedStatement
一.使用Statement而不是PreparedStatement对象 JDBC驱动的最佳化是基于使用的是什么功能. 选择PreparedStatement还是Statement取决于你要怎么使用它们 ...
- thinkPHP 模板中的语法知识 详细介绍(十二)
原文:thinkPHP 模板中的语法知识 详细介绍(十二) 本章节:介绍模板中的语法,详细的语法介绍 一.导入CSS和JS文件 ==>记住常量的是大写 1.css link .js sc ...
- bunoj 34990(hash)
传送门:Justice String 题意:有两个串A,B,问是否存在A的一个子串S,S和B的长度相等,最多有2个字符不同.如果有多个,输出其实下标最小S的下标,没有输出-1. 分析:从A每个位置开始 ...