快速构建Windows 8风格应用20-MediaElement
原文:快速构建Windows 8风格应用20-MediaElement
本篇博文主要介绍MediaElement概述、MediaElement对象介绍、MediaElement常用属性、如何控制媒体播放。
MediaElement概述
通常在Windows 8风格应用中播放音频或视频文件时是使用MediaElement类进行构建的。
MediaElement对象提供了用于播放视频或音频的属性和方法。
相关MediaElement的开发示例可参考该链接:XAML media playback sample和Media Play To sample。
MediaElement对象介绍
使用MediaElement构建将视频文件在应用面中进行播放的功能是比较容易的。
例如:
XAML代码中声明MediaElement控件,Source属性值设置为视频的Uri。
- <MediaElement x:Name="media" Source="Video/Azure_Tmobile_500k.wmv" Width="400" />
C#代码中声明MediaElement控件,代码如下:
- MediaElement mediaElement = new MediaElement();
- mediaElement.Name = "mediaElement1";
- mediaElement.Width = 400;
- mediaElement.Source = new Uri("ms-appx:///Video/Azure_Tmobile_500k.wmv");
- this.grid1.Children.Add(mediaElement);
允许效果图如下:
当页面加载时,MediaElement就自动播放。通常情况下为了防止视频的自动播放,可将MediaElement控件的AutoPlay属性值设置为false。
MediaElement常用属性
MediaElement对象常用属性包括:
1)AutoPlay属性:指定MediaElement是否自动开始播放。默认值为True;
2)IsMuted属性:指定MediaElement是否设置为静音。默认值为False,True表示静音;
3)Stretch属性:如何拉伸视频来填充MediaElement对象。默认值为Fill,其他值还有None、Uniform、UniformToFill;
4)Volume属性:设置MediaElement对象音量值。默认值为0.5,最大值为0;
MediaElement对象其他属性可参考该链接:MediaElement Class。
如何控制媒体播放
我们可以使用MediaElement对象的Play、Pause 和 Stop 方法控制媒体播放。
例如:
XAML代码中声明MediaElement控件,添加三个Button来控制媒体的播放。
- <MediaElement x:Name="media" Source="Video/Azure_Tmobile_500k.wmv" Width="300" Height="300" Grid.Column="0" Grid.Row="0" Margin="518,42,548,426" />
- <Button Click="StopMedia" Grid.Column="0" Content="Stop" Margin="444,365,0,365" />
- <Button Click="PauseMedia" Content="Pause" Margin="615,365,0,365" />
- <Button Click="PlayMedia" Content="Play" Margin="828,365,0,365" />
C#代码中:
- private void StopMedia(object sender, RoutedEventArgs e)
- {
- media.Stop();
- }
- private void PauseMedia(object sender, RoutedEventArgs e)
- {
- media.Pause();
- }
- private void PlayMedia(object sender, RoutedEventArgs e)
- {
- media.Play();
- }
另外我们还可以设置MediaElement对象Position 属性来指定媒体特定的位置。
快速构建Windows 8风格应用20-MediaElement的更多相关文章
- 快速构建Windows 8风格应用24-App Bar构建
原文:快速构建Windows 8风格应用24-App Bar构建 本篇博文主要介绍构建AppBar基本步骤.如何构建AppBar.如何在AppBar中构建上下文命令.如何在AppBar中构建菜单.如何 ...
- 快速构建Windows 8风格应用21-构建简单媒体播放器
原文:快速构建Windows 8风格应用21-构建简单媒体播放器 本篇博文主要介绍如何构建一个简单的媒体播放器. <快速构建Windows 8风格应用20-MediaElement>博文中 ...
- 快速构建Windows 8风格应用32-构建辅助磁贴
原文:快速构建Windows 8风格应用32-构建辅助磁贴 引言 Windows Phone中,我们开发者可能会开发的一个功能点是将数据列表中某一项"Pin To Start(固定到开始屏幕 ...
- 快速构建Windows 8风格应用17-布局控件
原文:快速构建Windows 8风格应用17-布局控件 本篇博文主要介绍三种常用的布局控件:Canvas.Grid.StackPanel. Panel类是开发Windows 8 Store应用中一个重 ...
- 快速构建Windows 8风格应用15-ShareContract构建
原文:快速构建Windows 8风格应用15-ShareContract构建 本篇博文主要介绍共享数据包.如何构建共享源.如何构建共享目标.DataTransferManager类. 共享数据包 Da ...
- 快速构建Windows 8风格应用14-ShareContract概述及原理
原文:快速构建Windows 8风格应用14-ShareContract概述及原理 本篇博文主要介绍Share Contract概述.Share Contract实现原理.实现Share Contra ...
- 快速构建Windows 8风格应用13-SearchContract构建
原文:快速构建Windows 8风格应用13-SearchContract构建 本篇博文主要介绍如何在应用中构建SearchContract,相应的原理已经在博文<快速构建Windows 8风格 ...
- 快速构建Windows 8风格应用9-竖直视图
原文:快速构建Windows 8风格应用9-竖直视图 本篇博文主要介绍竖直视图概览.关于竖直视图设计.如何构建竖直视图 竖直视图概览 Windows 8为了支持旋转的设备提供了竖屏视图,我们开发的应用 ...
- 快速构建Windows 8风格应用10-设备方向
原文:快速构建Windows 8风格应用10-设备方向 本篇博文主要介绍常用支持Windows 8操作系统设备的方向.如何获取当前设备方向.DisplayProperties类. 常用支持Window ...
随机推荐
- Mongodb语法总结
mongodb与mysql指挥控制 由数据库中的一般传统的关系数据库(database).表(table).记录(record)三个层次概念组成.MongoDB是由数据库(database).集合(c ...
- 解决Activity启动黑屏和设置android:windowIsTranslucent不兼容activity切换动画的问题
在该项目中遇到开Activity之后,黑屏问题,解决的办法是在网上通过设置发现theme和style特性,可以实现. http://www.cnblogs.com/sunzn/p/3407078.ht ...
- 【Hibernate步步】--一对一映射双向关联具体解释(两)
很抱歉.有两天没更新博客文章,不要写文章一天真的感觉很是空的啊.制定一个写作习惯,想改也改不掉啊.说点题外话,前两天我收到一封私人信件给朋友,我写邀请函的文章OWS文章.一种技术用于研究图标工具,这位 ...
- react学习笔记1--基础知识
什么是react A JAVASCRIPT LIBRARY FOR BUILDING USER INTERFACES[React是一个用于构建用户界面的JavaScript库.] React之所以快, ...
- MySQL Scale Out
原文:MySQL Scale Out 简介 MySQL复制中较常见的复制架构有“一主一从”.“一主多从”.“双主”.“多级复制”和“多主环形机构”等,见下图: 最常用,也最灵活的就要数“一主多从”复制 ...
- C#精华(文章3版本)笔记
C#精华(文章3版本) 跳转至: 导航. 搜索 文件夹 1 C#概述 2 数据类型 3 运算符和控制流 4 方法和參数 5 类 6 继承 7 接口 8 值类型(struct) 9 合式类型 10 异常 ...
- ABP依赖注入
ABP依赖注入 点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之6.ABP依赖注入 ABP是“ASP.NET Boilerplate Project (ASP.N ...
- 经典算法题每日演练——第十六题 Kruskal算法
原文:经典算法题每日演练--第十六题 Kruskal算法 这篇我们看看第二种生成树的Kruskal算法,这个算法的魅力在于我们可以打一下算法和数据结构的组合拳,很有意思的. 一:思想 若存在M={0, ...
- Mysql编写定时任务事件
原文:Mysql编写定时任务事件 场景: 例如:某系统,用户每天只能拥有一次的抽奖机会,抽过后当天就不可再抽,但是过了24:00点后用户就重新拥有一次抽奖机会.像这种需要数据库定时对某个字段进行更新操 ...
- C#关于图片的相关处理
public class ImageHelper { /// <summary> /// 图片转换成字节流 /// </summary> /// <param name= ...