Visual Studio 2019编译中的问题&;过程代码(C#)

Visual Studio 2019编译中的问题&;过程代码(C#),c#,visual-studio-2019,C#,Visual Studio 2019,我知道在VisualStudio2019更新后,C#中的计时器无法完全工作 在我下面的代码中,label1仅设置为3,之后不会发生任何事情。 我检查了问题并进行了测试,但没有找到问题 private void Form1_Load(object sender, EventArgs e) { Timer1.Start(); } private void Form1_Enter(object sender, EventArgs e) { } private void Timer1_Ti

我知道在VisualStudio2019更新后,C#中的计时器无法完全工作

在我下面的代码中,
label1
仅设置为
3
,之后不会发生任何事情。 我检查了问题并进行了测试,但没有找到问题

private void Form1_Load(object sender, EventArgs e)
{
    Timer1.Start();
}

private void Form1_Enter(object sender, EventArgs e)
{

}

private void Timer1_Tick(object sender, EventArgs e)
{

    if (Timer1.Interval >2000)
    {
        label1.Text = "2";
    }

    if(Timer1.Interval > 3000)
    {
        label1.Text = "3";
    }
    if(Timer1.Interval > 3999)
    {
        label1.Text = "4";
    }

}

如您的评论所示,您可以这样做:

private void Timer1_Tick(object sender, EventArgs e)
{
  if ( Timer1.Interval > 3999 )
  {
    label1.Text = "4";
    Timer1.Interval = newValue1;
  }
  else
  if ( Timer1.Interval > 3000 )
  {
    label1.Text = "3";
    Timer1.Interval = newValue2;
  }
  else
  if ( Timer1.Interval > 2000 )
  {
    label1.Text = "2";
    Timer1.Interval = newValue3;
  }
  else
    DoSomething();
}
我颠倒了条件测试,使之连贯一致,并添加了一些其他的条件来优化,尤其是为了避免冲突

问题不在于Visual Studio、2019版本或计时器,而在于您的代码和算法,所以规则是正确的


我不确定您的目标,但您可以修改此已更正的代码。

您是否真的在某处修改了
Timer1.Interval
?您好,欢迎来到Stack Overflow。您显示的代码不完整。因此,我们无法复制您的问题。请为我们提供重现问题(即a)所需的所有代码。您是否试图确定经过了多少时间?这不是
Interval
属性的用途。也许你想要一个感谢你的重播人没有一切正常我测试更多的项目!!!欢迎来到StackOverflow。感谢您抽出时间分享您的问题。你要什么还不清楚。你的目标和困难是什么?到目前为止你做了什么?请尝试更好地解释您的问题、您的开发环境和数据结构,并共享更多代码(无屏幕截图)、屏幕图像或草图以及用户故事或场景图。为了帮助您改进您的请求,请阅读右上角的和我避免问的问题。谢谢,伙计,但在更新我的代码之前,为什么现在不工作?什么不工作?你改变了什么?你在什么地方开始计时了吗?什么是起始间隔以及更新的值是什么?在更新之前,我不需要设置间隔值&计时器本身通过时间推移更改间隔值