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

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>

它实现的效果是:

还比如。表示句号(。),
表示回车,
表示换行,当然你可以看出格式都差不多,可以更改最后一个字母或数字看看变成什么,比如

〇是一个圆圈;当用到换行的时候,我们可以设置TextBlock的属性TextWrapping="Wrap",该属性表示在显示文本超过容器所限制的宽度时,文本会自动换行;

也可以设置文本对齐方式,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的更多相关文章

  1. 背水一战 Windows 10 (19) - 绑定: TemplateBinding 绑定, 与 RelativeSource 绑定, 与 StaticResource 绑定

    [源码下载] 背水一战 Windows 10 (19) - 绑定: TemplateBinding 绑定, 与 RelativeSource 绑定, 与 StaticResource 绑定 作者:we ...

  2. 与众不同 windows phone (19) - Device(设备)之陀螺仪传感器, Motion API

    原文:与众不同 windows phone (19) - Device(设备)之陀螺仪传感器, Motion API [索引页][源码下载] 与众不同 windows phone (19) - Dev ...

  3. 不可或缺 Windows Native (19) - C++: 对象的动态创建和释放, 对象的赋值和复制, 静态属性和静态函数, 类模板

    [源码下载] 不可或缺 Windows Native (19) - C++: 对象的动态创建和释放, 对象的赋值和复制, 静态属性和静态函数, 类模板 作者:webabcd 介绍不可或缺 Window ...

  4. 不可或缺 Windows Native 系列文章索引

    [源码下载] 不可或缺 Windows Native 系列文章索引 作者:webabcd 1.不可或缺 Windows Native (1) - C 语言: hello c 介绍不可或缺 Window ...

  5. 重新想象 Windows 8.1 Store Apps (90) - 通信的新特性: 通过 HttpBaseProtocolFilter 实现 http 请求的缓存控制,以及 cookie 读写; 自定义 HttpFilter; 其他

    [源码下载] 重新想象 Windows 8.1 Store Apps (90) - 通信的新特性: 通过 HttpBaseProtocolFilter 实现 http 请求的缓存控制,以及 cooki ...

  6. Windows 常用的运行命令

    1. 打开程序 1)   calc                    计算器 2)   notepad                 记事本 3)   write                 ...

  7. 在uwp中复活常用的vb库函数

    这个博文是纯原创的,转载一定要说明作者是 Nukepayload2!! 在.Net Core 中,很多地方被精简了,有个重灾区就是vb语言库.从当初的囊括vb6库函数并且附带后期绑定到现在的几个函数加 ...

  8. 我(webabcd)的文章索引

    [最后更新:2014.08.28] 重新想象 Windows Store Apps 系列文章 重新想象 Windows 8 Store Apps 系列文章 重新想象 Windows 8 Store A ...

  9. wpf 窗体翻页效果

    点击设置翻页,取消翻回来 1.xaml <Window x:Class="_3D翻页动画.MainWindow" xmlns="http://schemas.mic ...

随机推荐

  1. Block Internet connection

    https://www.board4allcz.eu/showthread.php?t=625547

  2. Delphi的String内存结构(够清楚) good

    变量s的内存结构为(字符串编码)A8 03 (字符宽度)01 00 (引用计数)FF FF FF FF (字符串长度)0A 00 00 00 (实际内容)31 32 33 34 35 36 37 38 ...

  3. Swift - 使用网格(UICollectionView)进行流布局

    一.网格UICollectionView最典型的例子是iBooks.其主要属性如下: 1,layout 该属性表示布局方式,有Flow.Custom两种布局方式.默认是Flow流式布局. 2,Acce ...

  4. ThinkPhp学习11

    原文:ThinkPhp学习11 一.模板的使用        (重点) a.规则 模板文件夹下[TPL]/[分组文件夹/][模板主题文件夹/]和模块名同名的文件夹[Index]/和方法名同名的文件[i ...

  5. 名字修饰约定extern "C"与extern "C++"浅析

    所谓名字修饰约定,就是指变量名.函数名等经过编译后重新输出名称的规则. 比如源代码中函数名称为int Func(int a,int b),经过编译后名称可能为?Func@@YAHHH@Z.?Func@ ...

  6. Android面向HTTP协议发送get请求

    /** * 採用get请求的方式 * * @param username * @param password * @return null表示求得的路径有问题,text返回请求得到的数据 */ pub ...

  7. Androidclient推断server是否开启 HttpHostException解决方式

    Android推断服务器是否开启,试了非常多方法都不行(若server未开启会卡在HttpResponse那),有人说高版本号的Android程序不同意在主线程中訪问网络(主线程中能够读写网络流)有待 ...

  8. jQuery选择

    1.基本的选择 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY29tZW9uc3RvbmU=/font/5a6L5L2T/fontsize/400/fil ...

  9. WM_CLOSE、WM_DESTROY、WM_QUIT学习总结(点击关闭按钮会触发WM_CLOSE消息,DestroyWindow API会触发WM_DESTROY和WM_NCDESTROY消息,MSDN上写的很清楚)

    WM_CLOSE:关闭应用程序窗口 WM_DESTROY:关闭应用程序 WM_QUIT:关闭消息循环 只有关闭了消息循环,应用程序的进程才真正退出(在任务管理器里消失). win32应用程序的完整退出 ...

  10. java基础---->摘要算法的介绍 (转)

    数据摘要算法是密码学算法中非常重要的一个分支,它通过对所有数据提取指纹信息以实现数据签名.数据完整性校验等功能,由于其不可逆性,有时候会被用做敏感信息的加密.数据摘要算法也被称为哈希(Hash)算法. ...