怎么可能 运行 一个代码只有 1 次?

How is it possible to run a code only 1 time?

我希望此代码中的 MessageBox 仅 运行 1 次。我希望它只显示一次。我该怎么做?



    if(textBox1.Text != "")
    
    {
     listBox1.Items.Add(textBox1.Text);
        
        textBox1.Clear();
    }
    
    else
    {
      DialogResult click = MessageBox.Show("Info Screen", "TextBox is Empty. Do you want to add a 
  blank space?", MessageBoxButtons.OKCancel);
    
    if(click==DialogResult.OK)
    
    {
    
    listBox1.Items.Add(textBox1.Text);
    
    }
    
    }

创建一个布尔值并使用 if 语句,然后在该 if 语句中使布尔值变为 false 并显示您的消息框

bool boolMessage = true;

if(boolMessage == true)
{
MessageBox.Show("One time");
boolMessage = false;
}

创建一个布尔类型的全局变量,如果消息已显示则保存标记。然后在你的代码中添加

全球: bool isFirstTime = true;

在您的代码中:

if (isFirstTime) {
      DialogResult click = MessageBox.Show("Info Screen", "TextBox is Empty. Do you want to add a 
  blank space?", MessageBoxButtons.OKCancel);

      isFirstTime = false;
}

我认为在你的案例中添加一个布尔标志只是代码污染。你可以用另一种方式解决这个问题。 => 您希望什么时候显示 MessageBox?当文本框内容等于 "" 并且您希望它只 运行 一次。为什么不在显示消息框之前检查列表框中是否已经存在 ""?像这样:

else
{
   if(listbox1.Items.IndexOf("") > -1)
      return;

   // continue with displaying the messagebox
}

尝试使用布尔值并使用 if 来确保代码仅在布尔值为真时运行,然后在 if 中将布尔值设置为假。

您也可以尝试使用函数并调用一次。

我不确定我是否回答了你的问题。