技术开发 频道

图形和视频控件以及Webbrowser控件

  【IT168技术】随着应用程序的视觉效果越来越重要,图形和视频控件是应用开发中非常重要的部分。本文着重给大家介绍两个基本控件,方便大家今后方便的开发适合自己需求的控件。

建立Windows Phone 7游戏项目
▲图书介绍

  Image控件

  该控件用于显示JPEG和PNG图像格式的图片。通过设置Source属性来指定图片的地址,地址可以是绝对URL地址,如http://www.1pies.com/logo.jpg,也可以是相对于应用程序的XAP文件的URL地址。

  通过设置Height和Width属性,使Image控件以确定的高度和宽度来显示图片,如果未设置这两个属性,那么将使用自然高度和其源图像的宽度进行显示。

  如果Source属性设置为无效值,那么将引发控件的ImageFailed事件。

  为了提高效率,如果直接在XAML中指定URI来设置Source,或者为其设置使用URI新构造的BitmapImage,那么Image可能具有异步行为。

  【XAML代码】

<Image …/>

  【示例】

  下面通过编写一个简单的网络图片显示器来演示Image控件显示图片的功能。该图片显示器的使用方式是在TextBox中输入一个在网络上的图片地址,按下“确定”按钮即可显示该网络位置的图片(如果地址正确可靠的话)。

  1)新建一个Windows Phone Application项目,将Image控件、TextBox控件和一个Button控件放入界面中,调整控件尺寸如图6-26所示。

Image控件开发
▲图6-26 新建一个Windows Phone Application项目

  2)为了使用户单击Button按钮可以显示图片,需要编写其响应代码,双击Button按钮编写其Click事件的响应代码如下:

  private void button1_Click(object sender, RoutedEventArgs e)

  {

  String photosource = textBox1.Text;

  image1.Source = new BitmapImage(new Uri(photosource, UriKind.RelativeOrAbsolute));

  }

  3)运行程序,输入图片网址,Image控件将会显示指定的图片,如图6-27所示。

Image控件开发
▲图6-27 访问网络图片后效果

  2.MediaElement控件

  【简介】

  该控件用于播放音频或者视频对象。

  MediaElement在默认情况下会立即播放由属性Source提供的媒体,这是通过设置AutoPlay属性为true来做到的,当然可以将该属性设置成false来关闭自动播放功能。

  通过设置Height和Width来定制视频显示的高度和宽度。但是最省事的方式是不设置这两个属性,这样的话视频会按照其实际大小进行播放和显示。

  【XAML代码】

<MediaElement …/>

  下面列出了控件所支持的音频和视频格式:

  (1)视频

  1)原始视频。

  2)YV12 - YCrCb(4:2:0)。

  3)RGBA - 32 位 Alpha、红色、绿色、蓝色。

  4)WMV1:Windows Media Video 7。

  5)WMV2:Windows Media Video 8。

  6)WMV3:Windows Media Video 9。

  l 支持简单配置文件和主配置文件。

  l 仅支持渐进式(逐行扫描)内容。

  7)WMVA:Windows Media视频高级配置文件,非VC-1。

  8)WVC1:Windows Media视频高级配置文件,VC-1。

  l 支持高级配置文件。

  l 仅支持渐进式(逐行扫描)内容。

  9)H264(ITU-T H.264 / ISO MPEG-4 AVC)。

  l 支持H.264和MP43编解码器。

  l 支持基本配置文件、主配置文件和高配置文件。

  l 仅支持渐进式(逐行扫描)内容。

  l 仅支持4:2:0色度二次采样配置文件。

  l 支持具有MP4的PlayReady DRM(H264和AAC-LC)。

  (2)音频

  1)“1”.这是线性 8 位或 16 位脉冲编码调制。大致来说,这是WAV格式。

  2)"353"- Microsoft Windows Media Audio v7、v8和v9.x Standard(WMA Standard)。

  3)"354"- Microsoft Windows Media Audio v9.x 和v10 Professional(WMA Professional)。

  l 支持32~96Kbit/s范围内的WMA 10 Professional低比特率(LBR)模式的全保真解码。

  l 多声道(5.1和7.1环绕)音频内容自动混缩为立体声。

  l 24 位音频将返回静音。

  l 采样率超过48000将在同域时返回无效格式错误代码,在跨域时返回 4001。

  4)"85"- ISO MPEG-1第三层(MP3)。

  5)"255"- ISO高级音频编码(AAC)。

  l 支持达到全保真的低复杂度(AAC-LC)解码(最高48kHz)。

  l 高效(HE-AAC)编码内容将仅解码为半保真(最高24kHz)。

  l 不支持多声道(5.1环绕)音频内容。

  WebBrowser控件

  该控件允许显示HTML内容。由于该控件的Height和Width属性默认为0,因此,应该始终在使用该控件前设置这两个属性。同时需要注意的是WebBrowser只能显示同一架构的内容。

  控件提供3种方式来显示HTML内容:

  1、调用NavigateToString(String)方法并传递一个包含要显示的XAML内容的字符串。

  2、将Source 属性设置为完全限定。

  3、调用Navigate(Uri)方法并将一个完全限定的或相对的URI传递给要显示的HTML内容。

  【XAML代码】

<WebBrowser  …/>

  【示例】

  本示例将模拟一个简单的浏览器,使用TextBox来获取用户输入的网址,用一个Button来获得用户的操作指令,同时使用一个WebBrowser来显示HTML内容。

  1)首先建立一个新的Windows Phone Application项目文件,将一个TextBox,一个Button和一个WebBrowser放入界面中,调整控件大小和位置,最后的布局如图6-28所示。

  2)双击Button,编写如下代码:

  private void button1_Click(object sender, RoutedEventArgs e)

  {

  String urlstring = textBox1.Text;

  webBrowser1.Navigate(new Uri(urlstring));

  }

  3)运行程序,在TextBox中输入网址“http://www.1pies.com”,按下GO按钮,程序运行后结果如图6-29所示。

WebBrowser
▲图6-28 WebBrowser控件

WebBrowser
▲图6-29 一个简易的浏览器

0
相关文章