title: Extending nested class which is using as property
body: <p>I wrote a nested class which is used as a bag for properties. This class is used as property which I named <code>Properties</code>.  I want to extend number of properties by interfaces.</p>
  
  <p>I wrote this example:</p>
  
  <pre><code>public interface IFirst {
      int asd { get; set; }
  }
  
  public interface ISecond {
      int zxc { get; set; }
  }
  
  public class MyClass {
      public class PropertyClass : IFirst {
          public int asd {
              get {
                  throw new NotImplementedException();
              }
              set {
                  throw new NotImplementedException();
              }
          }
      }
  
      public PropertyClass Properties; 
  }
  
  public class MyNextClass : MyClass {
      public class PropertyClass : MyClass.PropertyClass, ISecond {
          public int zxc {
              get {
                  throw new NotImplementedException();
              }
              set {
                  throw new NotImplementedException();
              }
          }
      }
  
      public void test() {
          Properties.zxc = 5; // Here is problem
      }
  }
  </code></pre>
  
  <p>But in this case I cant to read/write new property <code>zxc</code>. </p>
  
  <p>I think because this still is reading a <code>Properties</code> type from parent class - <code>MyClass.PropertyClass</code> and not <code>MyNextClass.PropertyClass</code>. </p>
  
  <p>I want to extending this without creating new property or hiding existing. </p>
  
  <p>Do you have any suggestions?</p>