title: Page.Header.Controls.Add(control) is adding controls to <body> not <head>
body: <p>I'm trying add some code at run time to the head element.  When I do this in the page load of a user control in the page:</p>
  
  <pre><code>HtmlGenericControl hc = new HtmlGenericControl();
  hc.InnerHtml = GetParameter("HeaderCode");
  Page.Header.Controls.Add(hc);
  </code></pre>
  
  <p>The control ends up in the body tag, as the first child element.  For Example:</p>
  
  <pre><code>...
  &lt;/head&gt;
  &lt;body&gt;
  &lt;span&gt;&lt;meta&gt;Test&lt;/meta&gt;&lt;/span&gt;
  ...
  </code></pre>
  
  <p>From my understanding, the Page.Header is supposed to be the Head element.  In the aspx page, the head has the <code>runat="server"</code> attribute set.</p>
  
  <p>Any idea how I can inject a string in to the <code>&lt;head&gt;</code> element? </p>