我试着用这个:
private void CreateDevice()
{
_playbackDevice = new WaveOut();
_playbackDevice.PlaybackStopped += PlaybackDevicePlaybackStopped;
}
void PlaybackDevicePlaybackStopped(object sender, EventArgs e)
{
if (OnPlaybackStopped != null)
{
OnPlaybackStopped(this, e);
}
}
但它从未调用过。
然后我尝试通过使用计时器轮询属性来使用 PlaybackState:
public PlaybackState PlaybackState
{
get
{
if (_playbackDevice == null)
return default(PlaybackState);
return _playbackDevice.PlaybackState;
}
}
但是当歌曲结束时,它不会变为“停止”。但是当我手动调用 Stop 时,它会正确更改。
有人能帮我吗?
似乎有一个错误...... http://naudio.codeplex.com/WorkItem/View.aspx?WorkItemId=10726