C# 自动检查功能

本文关键字:功能 检查 | 更新日期: 2023-09-27 17:57:00

我有一个名为Checking()的函数来更新我的UI。我想让这个函数自动运行,每 1 秒运行一次并更新我的 UI。

我该怎么做?

这是我的函数:

public MainWindow()
{
    InitializeComponent();
    Checking()
}
public void Checking()
{
    if (status= Good)
        UI.color.fill= Green
    else
        UI.color.Fill = Red
}

C# 自动检查功能

这段代码可以帮助你

//need to add  System.Timers in usings
using System.Timers;
//inside you code
//create timer with interval 2 sec
Timer timer=new Timer(2000);
//add eventhandler 
timer.Elapsed+=new ElapsedEventHandler(timer_Elapsed);
//start timer
timer.Start();

private void timer_Elapsed(object sender, ElapsedEventArgs e)
    {
        MessageBox.Show("324");
        //or other actions
    }
您需要

确保在Checking()中所做的更改已绑定,并为其发送了IPropertyNotifyChange。

using System.Reactive;
public MainWindow()
{
    InitializeComponent();
    Observable.Interval(TimeSpan.FromSeconds(1))
        .Subscribe( _ => Checking() );
}

DispathTimer 是计时器,它与 UI 在一个线程中工作。此代码可以帮助您

 public partial class MainWindow : Window {
    public MainWindow() {
        InitializeComponent();
        DispatcherTimer timer = new DispatcherTimer(){Interval = new TimeSpan(0,0,0,1)};
        timer.Tick += new EventHandler(timer_Tick);
        timer.Start();
    }
    void timer_Tick(object sender, EventArgs e) {
        Checking();
    }
    public void Checking()
    {   
       .....
    }