Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 定时器c上的单输出#_C# - Fatal编程技术网

C# 定时器c上的单输出#

C# 定时器c上的单输出#,c#,C#,我是一个初学者,试图了解什么是定时器,我如何使用它。如果你能回答我的问题,我将不胜感激 我有一个称为“经过时间”的计时器,我将间隔设置为1000毫秒。 我想要实现的是只显示一次我的信息:“Hi just One”,而不是每1秒显示一次 private void Elapsed_Time_Tick(object sender, EventArgs e) { Messagebox.show("Hi just once"); } 如果您仍然

我是一个初学者,试图了解什么是定时器,我如何使用它。如果你能回答我的问题,我将不胜感激

我有一个称为“经过时间”的计时器,我将间隔设置为1000毫秒。 我想要实现的是只显示一次我的信息:“Hi just One”,而不是每1秒显示一次

       private void Elapsed_Time_Tick(object sender, EventArgs e)
       {
         Messagebox.show("Hi just once");
       }

如果您仍然希望触发计时器的滴答声事件,请尝试以下操作

private bool _hasTicked = false;

private void Elapsed_Time_Tick(object sender, EventArgs e)
{
     if(!_hasTicked)
     {
         Messagebox.show("Hi just once");
         _hasTicked = true;
     }
}

您可以这样做

您需要禁用事件处理程序中的计时器-这将防止它再次滴答作响。根据您使用的计时器,您正在寻找停止方法或将间隔更改为无穷大的方法。对于计时器是什么以及它的用途,您应该从这里开始:我希望计时器继续计时,我只想显示消息一次。我将等待10分钟,以使其符合回答。多谢各位
private void Elapsed_Time_Tick(object sender, EventArgs e)
{   
    Messagebox.show("Hi just once");
    Elapsed_Time_Tick.Enabled = false;      
}