1

我有一个 MediaElement,它在缓冲时显示一个简单的进度条。它在 BufferingProgressChanged 事件中显示或隐藏。有关代码,请参见下文。

问题是 MediaElement 经常决定缓冲两次,导致进度条显示两次。为什么会这样,有没有办法解决这个问题?

谢谢!

private void MediaElement_BufferingProgressChanged(object sender, RoutedEventArgs e)
{
    if (MediaElement.CurrentState == MediaElementState.Buffering)
    {
        BufferProgressBar.Value = MediaElement.BufferingProgress;
        BufferGrid.Visibility = System.Windows.Visibility.Visible;
    }
    else
    {
        BufferGrid.Visibility = System.Windows.Visibility.Collapsed;
    }
}
4

1 回答 1

0

我认为您可以尝试通过存储 MediaElement 的最后状态来解决此问题,这样您就可以检查它是从 Playing 还是 Buffering 进行缓冲。

于 2012-12-19T16:21:22.787 回答