title: Using dynamic type
body: <p>I'm using a System.Window.Controls Webbrowser (WPF) which is throwing up a few anomolies here and there.</p>
  
  <p>Normally if I want to get access to the webbrowser document in Winforms and click an element I would use</p>
  
  <pre><code>       HtmlDocument document = webNav.webBrowser1.Document;
         document.GetElementById("id_of_element").InvokeMember("Click");
  </code></pre>
  
  <p>However, in WPF it throws error <code>Cannot implicitly convert type 'object' to 'System.Windows.Forms.HtmlDocument'. An explicit conversion exists (are you missing a cast?)</code>.</p>
  
  <p>I can get around this by using</p>
  
  <pre><code>       dynamic document = webNav.webBrowser1.Document;
         document.GetElementById("id_of_element").InvokeMember("Click");
  </code></pre>
  
  <p>Is there a better/preferred method or is this an acceptable use of the dynamic type?  (are there any examples of acceptable use of dynamic type?)</p>