C# 消息框多次弹出
我有以下代码,timerStart方法每秒调用一些函数,问题是当checkSigning方法中的条件为true时,弹出窗口会多次出现。。我怎么可能解决这个问题?有人能帮我吗:你可以在执行滴答声的同时停止计时器,然后在最后再次启动它。你唯一的缺点是,在你完成UpDeaTimeReTimk执行的那一刻,时间将被测量,但是你也可以认为它是一个好处。C# 消息框多次弹出,c#,wpf,postgresql,timer,messagebox,C#,Wpf,Postgresql,Timer,Messagebox,我有以下代码,timerStart方法每秒调用一些函数,问题是当checkSigning方法中的条件为true时,弹出窗口会多次出现。。我怎么可能解决这个问题?有人能帮我吗:你可以在执行滴答声的同时停止计时器,然后在最后再次启动它。你唯一的缺点是,在你完成UpDeaTimeReTimk执行的那一刻,时间将被测量,但是你也可以认为它是一个好处。 private void updaterTimer_Tick(object sender, EventArgs e) { updaterTimer
private void updaterTimer_Tick(object sender, EventArgs e)
{
updaterTimer.Stop();
Time.Content = "Time : " + DateTime.Now.ToLongTimeString();
exist = saved_settings();
if (exist)
{
settingForToday();
checkSigningAvailable();
setSigning(signingAvailable = getSigning());
}
else
{
ongoing.Content = "Event : No Event";
sign_in.Content = "Sign-in Time : ";
sign_out.Content = "Sign-out Time : ";
}
updaterTimer.Start();
}
您可以尝试在输入
disableSigningOut()
时设置一个标志,并在退出该方法时清除它。然后在方法的开头添加一个检查(在设置标志之前),如果标志已经设置,则终止。感谢您的回答,我将尝试:)它不起作用:<您能让我成为您想要的标志吗?其他信息:如果我有标签,如果我停留在主页标签中,它会弹出一次,但是,当我切换到不同的标签,而条件还不是真的,这是当它弹出不止一次
private void updaterTimer_Tick(object sender, EventArgs e)
{
updaterTimer.Stop();
Time.Content = "Time : " + DateTime.Now.ToLongTimeString();
exist = saved_settings();
if (exist)
{
settingForToday();
checkSigningAvailable();
setSigning(signingAvailable = getSigning());
}
else
{
ongoing.Content = "Event : No Event";
sign_in.Content = "Sign-in Time : ";
sign_out.Content = "Sign-out Time : ";
}
updaterTimer.Start();
}