title: Display string value real time
body: <p>I'm writing a <strong>console program</strong>, and my code looks like this:</p>
  
  <p>Configuration.cs</p>
  
  <pre><code>public static class Configuration
  {
      public static string Message = "";
  }
  </code></pre>
  
  <p>Menu.cs</p>
  
  <pre><code>class Menu
  {
      public static void showMenu()
      {
          Console.Clear();
          Console.WriteLine("1: SOMETHING");
          Console.WriteLine("2: SOMETHING");
          Console.WriteLine("3: SOMETHING");
          Console.WriteLine("SYSTEM MSG: " + Configuration.Message);
          Console.Write("INPUT: ");
      }
  }
  </code></pre>
  
  <p>Program.cs</p>
  
  <pre><code>...
  static void Main(string[] args)
  {
      ...
      int choice;
  
      while(true)
      {
          Menu.showMenu();
          choice = Convert.ToInt32(Console.ReadLine());
  
          switch(choice)
          {
              case 1:
              Configuration.Message = "HELLO!";
              break;
  
              case 2:
              Configuration.Message = "HI!";
              break;
  
              case 3:
              Configuration.Message = "WHAT?!";
              break;
          }
      }
  }
  ...
  </code></pre>
  
  <p>For now, when I change Configuration.Message, it will display on the menu because the showMenu method clears the console and show the string again.</p>
  
  <p>But what I want to make is without Clear method, I want to show Configuration.Message for real time.  I was thinking that using Timer and refresh the menu every second, but it is not efficient (feels like cheating).  How can I do this?</p>