文字

TextBlock 元素允许你添加文字到你的 Silverlight 内容。 本文档描述了如何使用 TextBlock 元素。

本文档包含以下章节。

TextBlock 元素

要添加文字到 Silverlight 内容, 创建一个 TextBlock 元素并添加你的文字内容到 <TextBlock> 标签之间。 下面的示例使用了一个 TextBlock 用以显示一些文字。

<Canvas
   xmlns="http://schemas.microsoft.com/client/2007"
   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
   
  <TextBlock>hello world!</TextBlock>
</Canvas>

通用 TextBlock 属性

除了 UIElement 具有的元素,比如 ClipOpacityTextBlock 元素提供了更多的属性,包括如下的:

  • FontSize:字体大小,像素。
  • FontStyle:字体样式。可选值:NormalItalic
  • FontStretch:字体拉伸。可选值:UltraCondensedExtraCondensedCondensedSemiCondensedNormalMediumSemiExpandedExpandedExtraExpandedUltraExpanded
  • FontWeight:字体重量。可选值:ThinExtraLightLightNormalMediumSemiBoldBoldExtraBoldBlackExtraBlack
  • FontFamily:字体家族名。
  • ForegroundBrushTextBlock 中的文字喷涂。 你可以使用一个纯色、渐变色或一个图像或视频。更多信息,请参见 利用形状绘图和利用笔刷喷涂

下面的示例演示了这些属性。

<Canvas
   xmlns="http://schemas.microsoft.com/client/2007"
   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
  <TextBlock FontSize="40"
      FontFamily="Georgia"
      FontStyle="Italic" FontWeight="Bold"
      FontStretch="Expanded"
      Canvas.Top="20" Canvas.Left="20">
      
      Hello world!
      
      <TextBlock.Foreground>
        <LinearGradientBrush>
          <GradientStop Color="SlateBlue" Offset="0.0" />
          <GradientStop Color="Black" Offset="1.0" />
        </LinearGradientBrush>
      </TextBlock.Foreground>
  </TextBlock>
</Canvas>

Run 元素

使用 Run 元素,你可以将几个不同的字体混合在同一个 TextBlock 中。 RunTextBlock 有相同的字体属性, 尽管它不能使用 Canvas.Left Canvas.Top 属性来放置。 下面的示例使用了一个 Run 元素更换了一些字体,而不是 TextBlock 中的所有文字。

<Canvas
   xmlns="http://schemas.microsoft.com/client/2007"
   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
   
  <TextBlock>
    Hello <Run FontSize="30">world</Run>
  </TextBlock>
</Canvas>

设置多个字体

不是每一个字体在用户上的电脑上都是有效的。 FontFamily 属性提供了多个字体, 当第一个字体不可用时,“Portable User Interface”在每一个机器总是有效, 这是 Silverlight 如何与浏览器交互的一部分。 下面的示例演示了不同的 FontFamily 设置。

<Canvas
   xmlns="http://schemas.microsoft.com/client/2007"
   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
   
  <TextBlock FontFamily="Arial, Times New Roman"
      Text="Hello World" FontSize="20"/>
  <TextBlock FontFamily="Times New Roman, Arial" Canvas.Top="40"
      Text="Hello World" FontSize="20"/>
  <TextBlock FontFamily="Portable User Interface" Canvas.Top="80"
      Text="Hello World" FontSize="20"/>
</Canvas>

 

下一步是什么

下一个主题,媒体,描绘了如何添加音频和视频到你的 Silverlight 内容中。