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所示。

Win10系列:C#应用控件基础12-LMLPHP

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