我最近开始研究 C#。
我想要做的是在 10 秒后停止在 WPF 应用程序中播放的视频。我知道我需要某种计时器(DispatcherTimer),但不知道如何使用它。
感谢您在这方面的任何帮助。
XAML 代码:
<MediaElement Canvas.Left="20" Canvas.Top ="40"
Name="VideoControl" LoadedBehavior="Manual" UnloadedBehavior="Stop"
MediaOpened="VideoControl_MediaOpened" Source="c:\users\ayymmoo\documents\visual
studio 2010\Projects\play_video\play_video\How I Met Your Mother Season 06 Episode 03
- Unfinished.avi">
</MediaElement>
Xaml.cs 代码
void PlayClick(object sender, EventArgs e)
{
VideoControl.Play();
}
void PauseClick(object sender, EventArgs e)
{
VideoControl.Pause();
}
void StopClick(object sender, EventArgs e)
{
VideoControl.Stop();
}
private void VideoControl_MediaOpened(object sender, RoutedEventArgs e)
{
}
我试图用你定义的代码替换我的代码......它第一次工作正常但是当我从暂停位置再次播放时,它在 10 秒前再次暂停,并且当我再次播放时暂停间隔变得更小这又是代码
public void PlayClick(object sender, EventArgs e) {
VideoControl.Play();
var dispatcherTimer = new System.Windows.Threading.DispatcherTimer();
dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
dispatcherTimer.Interval = new TimeSpan(0, 0, 10);
dispatcherTimer.Start();
}
private void dispatcherTimer_Tick(object sender, EventArgs e)
{
VideoControl.Pause();
}