Silverlight入门学习(30)
来源:互联网 发布:深圳网络 编辑:程序博客网 时间:2024/05/17 00:02
原文地址: http://www.dingos.cn/index.php?topic=2000.0
第三十章 如何在Silverlight播放音频或声音文件?
Silverlight提供了一个名为MediaElement的类用来播放音频或视频文件。
Silverlight中的MediaElement支持播放MP3和WMV格式的视频/音频文件。现在Silverlight当前版本不支持播放.WAV和.AVI格式的文件。
如果尝试使用MediaElement控件播放.WAV或.AVI文件,将收到以下错误:
Error: Unhandled Error in Silverlight 2 Application<Application Name>Code:3001
Category: MediaError
Message:AG_E_INVALID_FILE_FORMAT
为了播放.MP3或.WMV文件,首先比较将这些文件包含在Silverlight项目中,然后设置它作为嵌入资源。
为了使视频文件作为嵌入资源,将视频文件添加到项目中,右键项目中的视频文件并选择“属性”页。设置“生成操作”为“嵌入的资源”。这样编译时视频文件会嵌入到.xap文件中。
将视频文件作为嵌入资源后,可以在XAML中定义MediaElement对象编写代码来播放文件。下面示例代码演示播放视频文件:
MediaElement media =new MediaElement();
Stream stream =Assembly.GetExecutingAssembly().GetManifestResourceStream(
"MyNamespace.Sound1.wav");
media.SetSource(stream);
media.AutoPlay = false;
media.Stop();
media.Play();
代码分析:
Stream stream =Assembly.GetExecutingAssembly().GetManifestResourceStream(
"MyNamespace.Sound1.wav");
上面的代码行从可执行程序集捕获视频流。记住这个视频文件时通过设置“生成操作”为“嵌入的资源”嵌入在程序集中的。
在上面代码中,“MyNamespace”表示应用程序的命名空间。“Sound1.wav”是视频的文明名,假设这个文件在应用程序的根目录。如果文件在子目录,也需要包括目录名,用“.”号隔开。
media.SetSource(stream);
上面的代码行,设置了播放媒体的源。
media.AutoPlay = false;
上面的代码行,表示播放器不能自动播放媒体,只有点击了开始才会播放。
media.Stop();
media.Play();
上面的diamond行,可以看到在.Play()之前做了.Stop()。这个停止仅在你多次播放相同的MediaElement时才需要。
- Silverlight入门学习(30)
- Silverlight入门学习(1)
- Silverlight入门学习(2)
- Silverlight入门学习(3)
- Silverlight入门学习(4)
- Silverlight入门学习(5)
- Silverlight入门学习(6)
- Silverlight入门学习(7)
- Silverlight入门学习(8)
- Silverlight入门学习(9)
- Silverlight入门学习(10)
- Silverlight入门学习(11)
- Silverlight入门学习(12)
- Silverlight入门学习(13)
- Silverlight入门学习(14)
- Silverlight入门学习(15)
- Silverlight入门学习(16)
- Silverlight入门学习(17)
- BFS算法求解0-1路径问题
- MyEclipse 快捷键大全
- configure/make/make install
- Lotus Workflow 学习笔记(1) 基本概念
- [转]如何检索与阅读
- Silverlight入门学习(30)
- Linux LCD 驱动程序的编写
- C#操作Access类
- Ruby和Python的语法比较
- 关于struts2+hibernate3.2中出现的java.lang.ClassCastException: java.lang.Integer异常的解决方案
- 英语老师不想让你知道的一些网站
- 正则表达式学习基础
- C/C++命名规则
- C#MD5函数