来源: 最后更新:23-05-19 12:15:37
Silverlight本身提供了多媒体播放控件,但并没有封装好,可以直接使用的控件。在网上搜索了一些,都不是很适用,有些过于复杂要引用一大堆dll,感觉很臃肿,有些样式风格不适合。silverlight只提供了MediaElement,并不像以前html那样现成的直接使用那么方便,所以就自己封装一下,做一个满足基本功能的简单播放器。通过本篇随笔认识一下Blend强大的修改控件样式魔力,和实现一个简单的播放器。
功能点:
1、播放、暂停及显示当前播放状态
2、实时显示已播放时间
3、播放进度条,并能拖动播放位置
4、全屏按钮及双击播放画面入或退出全屏
5、调整音量
6、播放列表
播放器的基本功能点就是需求,将需求分解,罗列出实现难点和功能要点,评估工作量及风险。
一、认识MediaElement控件
public MediaElementState CurrentState { get; }MediaElement 的当前状态。状态可以为下列值之一(如在 MediaElementState 枚举中所定义):Buffering、Closed、Opening、Paused、Playing 或 Stopped。默认值为 Closed。
public bool AutoPlay { get; set; }如果自动播放,则为 true;否则为 false。默认值为 true。如果设置 Source 属性前将此属性设置为 true,则设置Source属性时自动播放视频。
public Uri Source { get; set; }获取或设置 MediaElement 上的媒体来源。即指定一个视频的统一资源标识符 (URI) 字符串。
public double Volume { get; set; }获取或设置媒体的音量大小。
//当媒体流已被验证和打开且已读取文件头时发生。在该自定义控件中主要通过该事件获取视频的总时长。
public event RoutedEventHandler MediaOpened
议员一丝不挂在妓院醒来:都怪中俄(议员一旦选出之后,他们就是奴隶)
“男子怒骂淄博老人”现场画面曝光:不是看你年纪大,我打死你!
南京一年可申请几本证书补贴? 南京一年可申请几本证书补贴的
美国两党就提高债务上限达成初步协议,白宫暂离“关门”走远一步
俄外长:西方向乌提供F-16战机会令局势“不可接受地升级”
国产大飞机C919商业首航成功,首排乘客是这四位
“五月天”演唱会遭吐槽克扣志愿者伙食:盒饭只有蛋炒饭咸菜,还有人分到面包和零食
G7广岛峰会:野心与实力愈发脱节(广岛现场)
4岁男孩撑伞从26楼跳下险丧命,别再只怪动画片了
国家最新规定:这41名近现代大师书画作品一律不准出境
员工讨要11.6万加班费,公司拒绝:你是虚假加班、恶意加班!法院:给5.6万
华春莹斥美国抹黑中国:如有能力是有罪 能否说美国有能力破坏全球安全?有能力就是有罪?华春莹反问
花3万元委托婚介找对象不成,写差评后被回复“找你当面解决” 2015年妻子约网友开房,缠绵后被装行李箱中带走,丈夫找不到妻子 就是让你当“豪猪”!美“毒刺”导弹运到台湾 海拔8450米!他们放弃登顶珠峰,救下同胞