在silverlight里实现视频重播

PS:目前官网的SDK详细文档还没出,我也只能尽我所知来写了,不对的地方,大家可以一起补充;如果有新的发现,我会持续更新此文。

MediaElement类简介

用来播放视频或声音

名称空间:System.Windows.Controls

程序集:agclr

 定义:

C#代码
  1. public sealed class MediaElement :System.Windows.Controls.MediaBase  

 

如何实现MedioElement重复播放(Replay)?

1  注册MediaEnded事件或者CurrentStateChanged事件

2 加入如下代码(用来实现重播)

 

C#代码
  1. //设置当前煤体的播放进度位置为0   
  2. MyMedia.Position = new TimeSpan(0);   
  3. //重当前位置播放煤体   
  4. MyMedia.Play();  

 

呵呵,是不是很简单。

补充说明对于CurrentStateChanged事件还要加入如下的判断语句:

 

C#代码
  1. //CurrentState:表示当前煤体状态   
  2. //可能的值:   
  3. //"Opening"  :打开或连接到煤体   
  4. //"Buffering":缓冲   
  5. //"Playing"  :播放   
  6. //"Paused"   :暂停或停止   
  7. if (MyMedia.CurrentState == "Paused")   
  8. {   
  9.     //code to replay   
  10. }  

 

建议把重播的处理加到MediaEnded事件


欢迎大家交流学习silverlight,也随时欢迎访问我的BLOGhttp://www.aspstat.com
posted @ 2007-08-31 23:47  坏坏@net  阅读(2612)  评论(7编辑  收藏  举报