title: Use of Name::Class1 from Name::Class2 in the same Name.h file fails
body: <p>I've a header file 'Custom.h' with two classes, ResizeLabel and ResizePanel, used to build a dll containing Custom Controls.  If I use Custom::ResizePanel within ResizeLabel it is failing:</p>
  
  <pre><code>error C2039: 'ResizePanel' : is not a member of 'Custom'
  </code></pre>
  
  <p>There is also a warning in the Errorlist:</p>
  
  <pre><code>Exception of type 'System.Exception' was thrown
  </code></pre>
  
  <p>I imagine that the warning is relevant.  Could it be because Visual Studio is trying to load the dll which contains Custom::ResizePanel from the code it is compiling which contains it?</p>
  
  <p>The code is as follows:</p>
  
  <pre><code>namespace Custom {
  
  public ref class ResizeLabel : public System::Windows::Forms::Label
  {
  protected: virtual void OnTextChanged(System::EventArgs^  e) override {
              __super::OnTextChanged(e);
              // Not elegant I know, 
              // but this is just to force the panel to process the size change
              dynamic_cast&lt;Custom::ResizePanel^&gt;(this-&gt;Parent)-&gt;CurrentWidth = 0;
          }
      ...
      };
  public ref class ResizePanel : public System::Windows::Forms::Panel
  { ... };
  }
  </code></pre>
  
  <p>I made it a dynamic_cast just to reduce the number of errors reported.</p>
  
  <p>How do I best avoid this problem?</p>