天天看点

windows phone (19) 深入了解TextBlockMediaElement

<a href="http://msdn.microsoft.com/zh-cn/library/system.windows.controls.textblock%28v=vs.95%29.aspx" target="_blank"></a>

<a href="http://msdn.microsoft.com/zh-cn/library/system.windows.controls.textblock%28v=vs.95%29.aspx" target="_blank"> TextBlock</a>

LineBreak  新起一行,是换行标签

&lt;Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"&gt; 

            &lt;TextBlock x:Name="tbShow" Text="文字示例" Foreground="White"    VerticalAlignment="Center" HorizontalAlignment="Center"&gt; 

                &lt;TextBlock.Inlines&gt; 

                    &lt;Run Foreground="Blue" Text="ddd"  &gt;&lt;/Run&gt; 

                &lt;/TextBlock.Inlines&gt; 

            &lt;/TextBlock&gt; 

        &lt;/Grid&gt; 

 可以看到我们在Run标签和TextBlock标签都设置的前景色和显示的文字,可是效果如何那,效果:

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

 再看下面的例子,我们对Run标签的一些属性进行了一些罗列:

&lt;!--ContentPanel - 在此处放置其他内容--&gt; 

       &lt;Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"&gt; 

           &lt;TextBlock x:Name="tbShow" Text="文字示例" Foreground="White"    VerticalAlignment="Center" HorizontalAlignment="Center"&gt; 

               &lt;Run Foreground="Blue"&gt;前景色Blue&lt;/Run&gt;&lt;LineBreak&gt;&lt;/LineBreak&gt; 

                &lt;Run FontStyle="Italic"&gt;字体样式Italic&lt;/Run&gt;&lt;LineBreak&gt;&lt;/LineBreak&gt; 

               &lt;Run  FontSize="30"&gt;字体30&lt;/Run&gt;&lt;LineBreak&gt;&lt;/LineBreak&gt; 

               &lt;Run  TextDecorations="Underline"&gt;下划线&lt;/Run&gt;&lt;LineBreak&gt;&lt;/LineBreak&gt; 

                 &lt;Run  TextDecorations="Underline" 

                        FontSize="30" 

                       FontStyle="Italic" 

                       Foreground="Blue" 

                       Text="综合" &gt;&lt;/Run&gt;&lt;LineBreak&gt;&lt;/LineBreak&gt; 

           &lt;/TextBlock&gt; 

       &lt;/Grid&gt; 

 实现的是这样的效果:

案例代码:

        &lt;Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"&gt; 

            &lt;TextBlock x:Name="tbShow"  Foreground="White" 

                       VerticalAlignment="Center" HorizontalAlignment="Center" 

                       Text="π表示3.14" 

                       &gt; 

 它实现的效果是:

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

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

也可以设置文本对齐方式,TextAlignment属性可以甚至为:left,right,center;

如果你在textblock设置了fontfamily属性,并且名字写错的话,不会造成什么后果,系统会使用默认的字体 ,但是从隐藏文件获取字体的话还是获取到的是错误字体;

 表示的是播放媒体,目前支持mp4,wma,mp3,wmv(ps:我刚刚从优酷找到一个swf格式的不支持),MediaElement的属性AutoPlay属性默认为True,所以当视频缓冲到可以播放的时候,视频会自动播放

 参考书上的地址设置了播放源,xaml代码如下

       &lt;Grid x:Name="ContentPanel" Background="AntiqueWhite" Grid.Row="1" Margin="12,0,12,0"&gt; 

           &lt;MediaElement Source="http://www.charlespetzold.com/Media/Walrus.wmv" &gt;&lt;/MediaElement&gt; 

 在播放途中截图:

本文转自shenzhoulong  51CTO博客,原文链接:http://blog.51cto.com/shenzhoulong/842815,如需转载请自行联系原作者

继续阅读