首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在C# WPF的重复模式下运行MediaPlayer?

如何在C# WPF的重复模式下运行MediaPlayer?
EN

Stack Overflow用户
提问于 2014-06-20 13:24:48
回答 1查看 10.4K关注 0票数 5

我有一台MediaPlayer

代码语言:javascript
运行
复制
public MediaPlayer backgroundMusicPlayer = new MediaPlayer ();

现在,因为它的背景音乐,我想在它结束后重复这首歌。

我应该如何实现它?

这是我发现的:

当歌曲结束时会引发一个事件:backgroundMusicPlayer.MediaEnded

我不知道我该怎么做?我对C#和一般的编程都是新手。

编辑:

代码语言:javascript
运行
复制
public void PlaybackMusic ( )
{
    if ( backgroundMusicFilePath != null )
    {
         backgroundMusicPlayer.Open (new Uri (backgroundMusicFilePath));
         backgroundMusicPlayer.MediaEnded += new EventHandler (Media_Ended);
         backgroundMusicPlayer.Play ();

         return;
    }
}

private void Media_Ended ( object sender, EventArgs e )
{
    backgroundMusicPlayer.Open (new Uri (backgroundMusicFilePath));
    backgroundMusicPlayer.Play ();
}

这是可行的,但我每次都需要打开该文件。这是唯一的办法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-20 13:41:27

尝试将position值设置回开始位置,而不是在Media_Ended处理程序开始时重置源。Position属性是一个TimeSpan,所以您可能需要类似这样的内容。

代码语言:javascript
运行
复制
private void Media_Ended(object sender, EventArgs e)
{
    media.Position = TimeSpan.Zero;
    media.Play();
}

EDIT 1 : Find more details here

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24320487

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档