在silverlight里实现视频重播
PS:目前官网的SDK详细文档还没出,我也只能尽我所知来写了,不对的地方,大家可以一起补充;如果有新的发现,我会持续更新此文。
MediaElement类简介:
用来播放视频或声音
名称空间:System.Windows.Controls
程序集:agclr
定义:
C#代码
- public sealed class MediaElement :System.Windows.Controls.MediaBase
如何实现MedioElement重复播放(Replay)?
1 注册MediaEnded事件或者CurrentStateChanged事件
2 加入如下代码(用来实现重播)
C#代码
- //设置当前煤体的播放进度位置为0
- MyMedia.Position = new TimeSpan(0);
- //重当前位置播放煤体
- MyMedia.Play();
呵呵,是不是很简单。
补充说明对于CurrentStateChanged事件还要加入如下的判断语句:
C#代码
- //CurrentState:表示当前煤体状态
- //可能的值:
- //"Opening" :打开或连接到煤体
- //"Buffering":缓冲
- //"Playing" :播放
- //"Paused" :暂停或停止
- if (MyMedia.CurrentState == "Paused")
- {
- //code to replay
- }
建议把重播的处理加到MediaEnded事件
欢迎大家交流学习silverlight,也随时欢迎访问我的BLOGhttp://www.aspstat.com