title: Making a control to be visible only for a particular amount of time in c#
body: <p>I am developing an application where i need the following requirement:</p>
  
  <p>Suppose i have a button and a label (initially visibility set to false) in my form, and user clicks on the button, then the label should be displayed with some text that i assign to the label in the button click. But this label should be displayed only for some time, say some 3 secs and then it should automatically go invisible. For this if i gave: </p>
  
  <pre><code>private void button1_Click(object sender, EventArgs e)
      {
       label1.Visible=true;
       label1.Text= "Magic";
       Thread.Sleep(3000);
       label1.Visible=false;
      }
  </code></pre>
  
  <p>This code does not help the purpose. What is the approach to do it? </p>