TextBlock控件

TextBlock控件是应用程序开发过程中经常使用的控件之一,它的主要功能是显示一段只读的文本内容。开发者可以使用TextBlock控件来显示提示信息,还可以根据需求将显示的提示信息设置成不同的大小和样式。

在XAML文件中,TextBlock控件的用法如下所示:

<TextBlock ...>

<!--添加文本-->

</TextBlock>

-或-

<TextBlock ...>

<!--添加一个或者多个Run元素-->

</TextBlock>

-或-

<TextBlock .../>

下面介绍一下TextBlock控件的常用属性:

  • FontFamily属性,获取或设置TextBlock控件中显示文本的字体。
  • FontSize属性,获取或设置TextBlock控件中显示文本的大小,默认以像素为单位。
  • FontStyle属性,获取或设置TextBlock控件中显示文本的字体样式,其属性值可以为Normal,Italic和Oblique。
  • Text属性,获取或设置TextBlock控件中显示的文本内容。
  • Foreground属性,获取或设置TextBlock控件中显示文本的颜色。
  • TextWrapping属性,获取或设置TextBlock控件中的文本是否自动换行。若属性值为Wrap,文本自动换行,若属性值为NoWrap则不自动换行。

通过TextBlock控件的子元素Run和LineBreak可以对文本内容进行细致的设置,Run元素能够设置文本的属性和样式,LineBreak元素表示在TextBlock控件中进行换行。

接下来通过一个示例来说明TextBlock控件的使用方法。

新建一个Windows应用商店的空白应用程序项目,并命名为TextBlockDemo,在MainPage.xaml文件的Grid元素中添加如下代码。

<TextBlock HorizontalAlignment="Left" FontSize="25" Margin="644,271,0,0" TextWrapping="Wrap" Text="TextBlock控件示例" VerticalAlignment="Top" Width="224" Height="29"/>

<TextBlock FontSize="25" Margin="644,314,498,370">

<Run FontFamily="楷体">这是</Run>

<Run FontFamily="楷体">一个楷体的文本</Run>

<LineBreak/>

<Run FontFamily="宋体">这是一个宋体的文本</Run>

</TextBlock>

在上面的代码中,添加了两个TextBlock文本块,在第一个文本块中,定义其FontSize属性值为25,Text属性的值为"TextBlock控件示例"。在第二个文本块中,定义FontSize属性值为25,然后在这个文本块中添加三个Run元素,设置前两个Run元素中文本内容分别为"这是"和"一个楷体的文本",FontFamily属性值都为"楷体",接着添加一个LineBreak元素用于对文本换行。在第三个Run元素中文本内容为"这是一个宋体的文本",FontFamily属性值为"宋体"。

运行程序,在界面上将以设置的字体显示TextBlock控件中写入的文本内容,效果如图4-22所示。

图4-22 使用TextBlock控件展示不同文字效果

Win10系列:C#应用控件基础12的更多相关文章

  1. Win10系列:JavaScript 控件的使用

    向页面中添加的控件可分为两种类型:标准的HTML控件和WinJS库控件.其中标准的HTML控件是指HTML标准中定义的基本控件,如按钮和复选框:WinJS库控件是为开发基于JavaScript 的Wi ...

  2. Win10系列:UWP界面布局基础12

    画刷 画刷(Brush)用于为图形元素填充颜色.在XAML中,画刷有许多属性,其中较常使用的是Fill属性和Stroke属性,Fill用于填充图形的背景色,而Stroke用于设置图形的线条颜色. 在实 ...

  3. WPF从我炫系列4---装饰控件的用法

    这一节的讲解中,我将为大家介绍WPF装饰控件的用法,主要为大家讲解一下几个控件的用法. ScrollViewer滚动条控件 Border边框控件 ViewBox自由缩放控件 1. ScrollView ...

  4. WPF 模仿 UltraEdit 文件查看器系列一 用户控件

    WPF 模仿 UltraEdit 文件查看器系列一 用户控件 运行环境:Win10 x64, NetFrameWork 4.8, 作者:乌龙哈里,日期:2019-05-10 章节: 起步 添加用户控件 ...

  5. C#控件系列--文本类控件

    C#控件系列--文本类控件         文本类控件主要包含Label.LinkLabel.Button.TextBox以及RichTextBox. Label 功能         Label用来 ...

  6. 重新想象 Windows 8 Store Apps (17) - 控件基础: Measure, Arrange, GeneralTransform, VisualTree

    原文:重新想象 Windows 8 Store Apps (17) - 控件基础: Measure, Arrange, GeneralTransform, VisualTree [源码下载] 重新想象 ...

  7. 重新想象 Windows 8 Store Apps (16) - 控件基础: 依赖属性, 附加属性, 控件的继承关系, 路由事件和命中测试

    原文:重新想象 Windows 8 Store Apps (16) - 控件基础: 依赖属性, 附加属性, 控件的继承关系, 路由事件和命中测试 [源码下载] 重新想象 Windows 8 Store ...

  8. WPF编游戏系列 之四 用户控件

    原文:WPF编游戏系列 之四 用户控件        在上一篇<WPF编游戏系列 之三 物品清单>中,对物品清单进行了演示,其中反复用到了同一组控件(如下图),而且 颜昌钢也指出在3.2. ...

  9. Delphi XE2 之 FireMonkey 入门(44) - 控件基础: TTreeView、TTreeViewItem

    Delphi XE2 之 FireMonkey 入门(44) - 控件基础: TTreeView.TTreeViewItem TScrollBox -> TCustomTreeView -> ...

随机推荐

  1. python tuple的函数

    1. len(tuple) 计算元组元素个数 >>> tuple1 = ('Google', 'Runoob', 'Taobao') >>> len(tuple1) ...

  2. Python基础(十三) 为什么说python多线程没有真正实现多现程

    Python中的多线程没有真正实现多现程! 为什么这么说,我们了解一个概念,全局解释器锁(GIL). Python代码的执行由Python虚拟机(解释器)来控制. Python在设计之初就考虑要在主循 ...

  3. windows程序设计 Unicode和多字节

    Unicode和多字节 Unicode是宽字符 多字节是窄字符 类型 变量类型 初始化方式 Unicode LPWSTR L"string" 多字节 LPSTR "str ...

  4. 微信OpenID获取

    用户要求在微信端登录一次后,以后不需要再登录.  我的系统是单独的一个网站. 使用MVC的记住密码功能, 如果用户重启,就还是要输入密码,所以需要有一个唯一不变的用来标示用户的ID.  OpenID就 ...

  5. 面向对象编程之OC

    面向对象概述 面向对象是一种符合人类思想习惯的编程思想.现实生活中存在各种形态不同的事物,这些事物之间存在着各种各样的联系,在程序中使用对象来映射现实中的事物,使用对象的关系来描述事物之间的联系,这种 ...

  6. 极致21点开发DAY2

    今天完成的主要内容时MainScene场景中设置面板的开发.游戏逻辑:点击设置按钮,弹出音乐设置弹框,弹框内容包括音乐的打开与关闭,退出游戏. 点击退出游戏,弹出退出游戏确认面板.效果图: 1.首先在 ...

  7. java,利用Selenium调用浏览器,动态模拟浏览器事件,动态获取页面信息

    1.环境搭建 jdk1.6版本:selenium 2.4版本. jdk1.8版本:selenium3.14版本. (1)selenium的jar包下载: 地址:http://selenium-rele ...

  8. SpringMVC 允许跨域访问 也可以选择限制指定IP 允许访问 对象的数据传输

    java ajax

  9. 为什么notify(), wait()等函数定义在Object中,而不是Thread中

    Object中的wait(), notify()等函数,和synchronized一样,会对“对象的同步锁”进行操作. wait()会使“当前线程”等待,因为线程进入等待状态,所以线程应该释放它锁持有 ...

  10. Oracle之with as和update用法

    许久不用,又忘了,做个记录 update test b set b.code=(with t as(select t.id,code||'_'||row_number() over(partition ...