控制 MediaElement(播放、暂停、停止、音量和速度)
控制 MediaElement(播放、暂停、停止、音量和速度)
WPF中对于多媒体的支持非常完整,一般都是通过MediaElement来实现的。
http://msdn.microsoft.com/zh-cn/library/ms748248.aspx
一个关键问题就是:MediaElement 的 LoadedBehavior 属性必须设置为 Manual 才能以交互方式停止、暂停和播放媒体。
下面可以看看代码基本上还是比较简单的
<Window x:Class="WpfApplication2.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1" Height="544" Width="811">
<Grid>
<MediaElement Margin="16,23,12,39" Name="mediaElement1" LoadedBehavior="Manual" Source="ITU.WMV" Volume="{Binding ElementName=slider1, Path=Value}"/>
<Button Height="23" HorizontalAlignment="Left" Margin="16,0,0,10" Name="button1" VerticalAlignment="Bottom" Width="75" Click="button1_Click">播放</Button>
<Button Height="23" HorizontalAlignment="Left" Margin="97,0,0,10" Name="button2" VerticalAlignment="Bottom" Width="75" Click="button2_Click">暂停</Button>
<Button Height="23" HorizontalAlignment="Left" Margin="182,0,0,10" Name="button3" VerticalAlignment="Bottom" Width="75" Click="button3_Click">音量+</Button>
<Button Height="23" HorizontalAlignment="Left" Margin="263,0,0,10" Name="button4" VerticalAlignment="Bottom" Width="75" Click="button4_Click">音量-</Button>
<Button Height="23" Margin="347,0,367,10" Name="button5" VerticalAlignment="Bottom" Click="button5_Click">快进</Button>
<Button Height="23" HorizontalAlignment="Right" Margin="0,0,286,10" Name="button6" VerticalAlignment="Bottom" Width="75" Click="button6_Click">快退</Button>
<Slider Height="22" HorizontalAlignment="Right" Margin="0,0,12,11" Name="slider1" VerticalAlignment="Bottom" Width="268" />
</Grid>
</Window>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
namespace WpfApplication2
{
/// <summary>
/// Window1.xaml 的交互逻辑
/// </summary>
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
}
/// <summary>
/// 播放
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, RoutedEventArgs e)
{
mediaElement1.Play();
}
/// <summary>
/// 暂停
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object sender, RoutedEventArgs e)
{
mediaElement1.Pause();
}
/// <summary>
/// 增加音量
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button3_Click(object sender, RoutedEventArgs e)
{
//mediaElement1.Volume++;
slider1.Value++;
}
/// <summary>
/// 降低音量
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button4_Click(object sender, RoutedEventArgs e)
{
//mediaElement1.Volume--;
slider1.Value--;
}
/// <summary>
/// 快进
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button5_Click(object sender, RoutedEventArgs e)
{
mediaElement1.SpeedRatio++;
}
/// <summary>
/// 快退
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button6_Click(object sender, RoutedEventArgs e)
{
mediaElement1.SpeedRatio--;
}
}
}
控制 MediaElement(播放、暂停、停止、音量和速度)的更多相关文章
- JS控制Video播放器(快进、后退、播放、暂停、音量大小)
思路: 一.首先监听触发事件. 比如:向上键对应的keyCode为38,向下键对应的keyCode为40,向左键对应的keyCode为37,向右键对应的keyCode为39,空格键对应的keyCode ...
- iOS 9音频应用播放音频之播放控制暂停停止前进后退的设置
iOS 9音频应用播放音频之播放控制暂停停止前进后退的设置 ios9音频应用播放控制 在“iOS 9音频应用播放音频之ios9音频基本功能”一文可以看到AVAudioPlayer类有很多的属性以及方法 ...
- js控制html5 audio的暂停、播放、停止
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <meta name ...
- Android应用--简、美音乐播放器增加音量控制
Android应用--简.美音乐播放器增加音量控制 2013年6月26日简.美音乐播放器继续完善中.. 题外话:上一篇博客是在6月11号发的,那篇博客似乎有点问题,可能是因为代码结构有点乱的原因,很难 ...
- 31.JS实现控制HTML5背景音乐播放暂停
实现控制网站背景音乐的播放暂停在html5中是非常容易和简单的,仅仅几行代码即可实现.首先在网页中嵌入背景音乐,html5代码为: <script src="http://wuover ...
- js控制html5 【video】标签中视频的播放和停止
需求:页面中有2个普通按钮a,b.还有一个video标签,能成功播放出视频..我想要的效果是,点击a按钮,视频开始播放,点击b按钮,视频播放停止!!!<br><br>----- ...
- Openlayers 实现轨迹播放/暂停/重新播放/从点击处播放/提速/减速
说明: 我的需求是需要实现轨迹播放/暂停/重新播放/从点击处播放,因此封装了一个类 解决方案: 1.初始化:主要是处理一下图层以及数据,通过插值构造一个全局数组 /** * @description ...
- 利用OpenCV和MFC对话框建设一个有滑动条控制的播放器--转
(一)问题的提出: OpenCV有一个很简单的播放视频文件并加载滑动条的程序,但是如何用MFC对话框来创建一个有滑动条控制的播放器呢,网络上四处搜索都没有代码可以参考,下的都是些骗子链接文件,很过分, ...
- Android中通过耳机按键控制音乐播放的实现
今天在研究Android中实现Android 4.2.2源码中的Music应用的源码,关于通过耳机按键控制音乐播放的实现,有点好奇,就仔细分析了一下源码, 主要由 MediaButtonIntentR ...
随机推荐
- 3_bootsrap布局容器
3.布局容器 BootStrap必须需要至少一个布局容器,才能为页面内容进行封装和方便的样式控制. 相当于一个画板. 帮助手册位置:全局CSS样式------->概览------->布局容 ...
- module.exports 、exports、export、export default的区别
module.exports和exports是属于 CommonJS 模块规范,export和export default是属于ES6语法. module.exports和exports导出模块,用r ...
- 在C#里面获得应用程序的当前路径
Environment.CurrentDirectory——获取应用程序的当前工作目录.System.IO.Directory.GetCurrentDirectory()AppDomain.Curre ...
- java JDBC数据库连接操作
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public clas ...
- Oracle安装盘空间不足,对.DBF文件进行迁移
一. select * from dba_data_files 使用该条语句可以查看当前库中有多少表空间并且DBF文件的存储位置 二. 找到对应的dbf文件,将该文件复制到你需要移动的位置 三. 开始 ...
- Maven(二)了解Maven仓库
转载自: http://blog.csdn.net/gebitan505/article/details/46233981 在使用 Maven 之前,我们必须要了解一下 Maven 到底是怎样管理 j ...
- Cannot find class [org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer]
解决方案:添加spring-webmvc好多人都不知道org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer这个类到底 ...
- Go Flow Control
[Go Flow Control] 1.for没有(),必须有{}. 2.for的前后表达式可以为空. 3.没有while,for即是while. 4.无穷循环. 5.if没有(),必须有{}. 6. ...
- Fragment生命周期(转)
Android在3.0中引入了fragments的概念,主要目的是用在大屏幕设备上--例如平板电脑上,支持更加动态和灵活的UI设计.平板电脑的屏幕要比手机的大得多,有更多的空间来放更多的UI组件,并且 ...
- 如何判断html页面停止滚动?
写在开始的话 查遍的文献,没有找到js或者jquery定义好的方法可用,最后迫不得已自己写了个方法.(如果哪位同学知道有其他方法,欢迎讨论) 代码 var count_index = 0; $(win ...