基本上,我有一个频率刷新屏幕上的数据。当其中一个数据点超过设定值时,它会引发错误。设置此错误后,我希望更改背景颜色(如闪烁警告)。
我遇到的问题是我已经在使用计时器了,当我调用一个新的计时器(用于闪存)时,它会停止另一个计时器工作,我不知道如何调用前一个方法(正在因为它使用object sender
)
这是我的代码:
public void Freq_Change(object sender, SelectionChangedEventArgs e)
{
_timer.Stop();
_timer.Interval = TimeSpan.FromSeconds(Freq.SelectedIndex + 1);
_timer.Start();
_timer.Tick += timer_Tick;
}
和timer_Tick
void timer_Tick(object sender, EventArgs e)
{
//Data generator
//Value pushes to text boxes
if (value is over 100)
{
Warning_Blink
"Oh no, an error"
}
else
{
"All good"
}
Warning_Blink
有新的计时器,然后调用warning_Tick
在warning_Tick
private bool _warning = false;
private void warning_Tick(object sender, EventArgs e)
{
if (_warning)
{
ErrorBox.Background = new SolidColorBrush(Colors.Red);
}
else
{
ErrorBox.Background = new SolidColorBrush(Colors.White);
}
_warning = !_warning;
Freq_Change();
}
在这里我调用Freq_Change
(这不起作用)我希望能够回到旧计时器(或者更好但永远不会在两者之间切换),这样数据生成就可以继续。
任何人都可以帮我吗?我已经摸不着头几个小时了