我有一个 MediaPlayer
public MediaPlayer backgroundMusicPlayer = new MediaPlayer ();
Run Code Online (Sandbox Code Playgroud)
现在,因为它的背景音乐,我想在它结束后重复这首歌.
我该如何实现呢?
这是我发现的:
歌曲结束时会引发一个事件: backgroundMusicPlayer.MediaEnded
我不知道该怎么办呢?我是C#的新手和一般的编程.
编辑:
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 ();
}
Run Code Online (Sandbox Code Playgroud)
这有效,但我每次都需要打开文件.这是唯一的方法吗?
不要在Media_Ended处理程序的开头重置Source,而是尝试将Position值设置回起始位置.Position属性是TimeSpan,所以你可能想要类似的东西.
private void Media_Ended(object sender, EventArgs e)
{
media.Position = TimeSpan.Zero;
media.Play();
}
Run Code Online (Sandbox Code Playgroud)
编辑1:在此处查找更多详细信息
| 归档时间: |
|
| 查看次数: |
7314 次 |
| 最近记录: |