title: Why the method is not called in the derived class
body: <p>I have a base class with a virtual method, I overwriting it in the derived class, but nothing happens when executed.</p>
  
  <pre><code>public class Derived : Browser 
  {
      private Browser Browser;
  
      public string UserName;
      public string Password;
  
  
      public Derived(string proxy): base(proxy) 
      {
          Browser = new Browser(proxy);
          Browser.InitDriver(false, true);
      }
  
      protected override void ShowStatus() 
      {
          Debug.WriteLine(this.Status);
      }
  }
  </code></pre>
  
  <p>Base</p>
  
  <pre><code>public class Browser 
  {
      private string UserProxy;
  
      protected string Status = null;
  
      public Browser(string proxy) 
      {
          UserProxy = proxy;
      }
  
      protected virtual void ShowStatus() 
      {
  
      }
  
      public void InitDriver() 
      {
          Status = "Initializing driver...";
          ShowStatus();
      }
  }
  </code></pre>
  
  <p>When I initialize the derived (new Derived("proxy")) class, the showstatus method is not called.</p>