创作背景:工控项目,如果能加入设备的视频介绍,那将是锦上添花的效果。所以小编进行了代码测试,并且简单的实现了视频播放功能。闲话少叙,接下来就看主要代码。
1、UserControl控件添加MediaElement组件。
<MediaElement x:Name="mediaElement" HorizontalAlignment="Left" Height="430" VerticalAlignment="Top" Width="780" Margin="5"/>
2、UserControl.cs文件增加相应的功能设置。本代码实现的是自动循环播放功能。
/// <summary>
/// 用户控件加载事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
//绑定视频文件
mediaElement.Source = new Uri("D:/展示视频.mp4");
//允许交互式控制
mediaElement.LoadedBehavior = MediaState.Manual;
mediaElement.Loaded += new RoutedEventHandler(media_Loaded);
mediaElement.MediaEnded += new RoutedEventHandler(media_MediaEnded);
mediaElement.Unloaded += new RoutedEventHandler(media_Unloaded);
}
/// <summary>
/// 自动播放
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
/// <exception cref="NotImplementedException"></exception>
private void media_Loaded(object sender, RoutedEventArgs e)
{
(sender as MediaElement).Play();
}
/// <summary>
/// 循环播放
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void media_MediaEnded(object sender, RoutedEventArgs e)
{
(sender as MediaElement).Stop();
(sender as MediaElement).Play();
}
/// <summary>
/// 停止播放
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void media_Unloaded(object sender, RoutedEventArgs e)
{
(sender as MediaElement).Stop();
}
/// <summary>
/// 播放展示视频
/// </summary>
public void Play()
{
mediaElement.Stop();
mediaElement.Play();
}
/// <summary>
/// 停止展示视频
/// </summary>
public void Stop()
{
mediaElement.Stop();
}
以上就是C#wpf使用MediaElement组件来播放视频的简单例程。