C# 如何为常规事件实现计时器?

C# 如何为常规事件实现计时器?,c#,wpf,events,timer,C#,Wpf,Events,Timer,我想在我的应用程序中实现一些计时器。 我的目标是提供一种简单的方法,每x秒/分钟执行一次函数,因此我考虑实现一个1秒、5秒和15秒计时器。 我想每1秒更新一次的第一件事是内置时钟(不知道c++中是否有其他解决方案,在c++中使用此方法) 另一个用途是同步功能等,应每xx秒执行一次 我的问题是,是否有关于这个主题的有用教程?这是我第一次想在我的一个应用程序中实现这样一个计时器系统,我不知道我是否需要记住任何事情 提前感谢您的回答:)您可以使用各种类型的计时器类 在WPF中,如果这是为了更新与用户界

我想在我的应用程序中实现一些计时器。 我的目标是提供一种简单的方法,每x秒/分钟执行一次函数,因此我考虑实现一个1秒、5秒和15秒计时器。 我想每1秒更新一次的第一件事是内置时钟(不知道c++中是否有其他解决方案,在c++中使用此方法) 另一个用途是同步功能等,应每xx秒执行一次

我的问题是,是否有关于这个主题的有用教程?这是我第一次想在我的一个应用程序中实现这样一个计时器系统,我不知道我是否需要记住任何事情


提前感谢您的回答:)

您可以使用各种类型的计时器类

在WPF中,如果这是为了更新与用户界面相关的内容,通常会使用


您也可以使用or,但要知道这将在后台线程上触发,而不是在主用户界面线程上触发。这通常是有益的(如果计时器的
Tick
事件或回调中发生“工作”,您不会等待或阻塞UI),但您还必须记住将任何与UI线程相关的用户界面封送回UI线程。

可以使用各种类型的计时器类

在WPF中,如果这是为了更新与用户界面相关的内容,通常会使用

您也可以使用or,但要知道这将在后台线程上触发,而不是在主用户界面线程上触发。这通常是有益的(如果计时器的
Tick
事件或回调中发生“工作”,您不会等待或阻止UI),但您还必须记住将任何与UI线程相关的用户界面封送回

    // This timer runs on UI thread
    System.Windows.Threading.DispatcherTimer timer = new System.Windows.Threading.DispatcherTimer();
    timer.Interval = System.TimeSpan.FromSeconds(1);
    timer.Tick += timer_Tick;
    timer.Start();

    void timer_Tick(object sender, System.EventArgs e)
    {
        Title = System.Windows.Input.Keyboard.FocusedElement.GetType().ToString();
    }