0

我确实有一个函数来更新我的 UI:目前我在我的 Action 函数中调用这个函数超过 8 次,这将更新我的 UI

   public void CheckStatus()
        {
             this.ovl_stacker1.FillColor =
             OvalShape == MEssage.EMPTY ? Color.Red :
                        OvalShape == Message.WARNING ? Color.Yellow : Color.Green;
            this.OvalShape .Refresh();
}

我怎样才能让这个功能在我的主服务器上每 5 秒自动运行一次?(因为我不想多次调用其他函数中的函数)

这是我的动作函数

       public void Action()
{
//do something....
checkstatus();
//do something.......
checkstatus();
//do something........
checkstatus();
...
...
..
}
4

2 回答 2

3

要每 5 秒调用一次方法,您可以使用计时器,但我认为这不是正确的解决方案。(虽然,要让计时器工作,您还需要让 UI 线程处于空闲状态,但您似乎不需要。)

相反,您应该CheckStatus()在实际更改状态时调用,最好是在相关属性的设置器中调用。

于 2013-01-21T01:39:15.347 回答
0

我想你会想使用System.Windows.Forms.Timer

于 2013-01-21T01:39:16.250 回答