/* =================================================
* Author: Micro
* Date: 2016=03-25 點擊下載源碼
* Qq: 471812366@qq.com
================================================= */
一、播放窗口
二、選擇文件

三、播放視頻

四、開發技術要領
創建MediaElement媒體控件
MediaElement mediaElement = new MediaElement();
設置視頻路徑
mediaElement.Source = new Uri(視頻路徑, UriKind.Relative);
當不播放音頻或視頻時觸發事件
mediaElement.MediaEnded += new RoutedEventHandler(mediaElement_MediaEnded);
private void mediaElement_MediaEnded(object sender, RoutedEventArgs e)
{
mediaElement.Stop();
}
當播放音頻或視頻或是存在播放文件時觸發事件,一般用於獲取總時長
mediaElement.MediaOpened += new RoutedEventHandler(mediaElement_MediaOpened);
private void mediaElement_MediaOpened(object sender, RoutedEventArgs e)
{
duration = mediaElement.NaturalDuration.HasTimeSpan ? mediaElement.NaturalDuration.TimeSpan : TimeSpan.FromMilliseconds(0);
}
視頻總時長
duration = mediaElement.NaturalDuration.HasTimeSpan ? mediaElement.NaturalDuration.TimeSpan : TimeSpan.FromMilliseconds(0);
暫停
mediaElement.Pause();
停止
mediaElement.Stop();
靜音
mediaElement.IsMuted = false;
有聲
mediaElement.IsMuted = true;
設置后退播放10秒鍾
mediaElement.Position = mediaElement.Position - TimeSpan.FromSeconds(10);
設置快進播放10秒鍾
mediaElement.Position = mediaElement.Position + TimeSpan.FromSeconds(10);
設置跳轉到指定秒數播放視頻
mediaElement.Position = new TimeSpan((new DateTime(0, 0, 0, 0, 0, 0)).Ticks); mediaElement.Play();
獲取當前視頻的時間
string b = mediaElement.Position.ToString().Substring(0, 8);
當前轉為計數器
string[] videotime = b.Split(':');
int totime = int.Parse(videotime[0]) * 3600 + int.Parse(videotime[1]) * 60 + int.Parse(videotime[2]);
text.Text = totime.ToString();
自定義計數器
text.Text = string.Format("{0}{1:00}:{2:00}:{3:00}", "播放進度:", mediaElement.Position.Hours, mediaElement.Position.Minutes, mediaElement.Position.Seconds);
