ASP.NET DropDownList control doesn't postback correctly inside of UserControl
<p>I have a situation where a <code>DropDownList</code> control is not posting back correctly.  The <code>AutoPost</code> property is set to true, so the postback does happen, but the <code>SelectedValue</code> is not set to the correct value.  In addition, the <code>onSelectedIndexChanged</code> event doesn't fire.  The exact same code works perfect fine on an ASPX page, but does not work in a ASCX control.</p>

<p>I have tried all the obvious things, I hope, trying to figure this one out, but no luck so far.  I have even investigated what comes back in <code>Request.Form["__EVENTTARGET"]</code> and <code>__EVENTARGUMENT</code>.  <code>__EVENTTARGET</code> does point to the drop down list, but the argument is empty.</p>

<p>Can the folks of StackOverflow help lead me in the right direction to debug this issue.  Of course, it is further complicated by master pages and the usual over-complication of ASP.NET.  Here is the code:</p>

<pre><code>&lt;div&gt;
    &lt;asp:DropDownList ID="testDrop" runat="server" AutoPostBack="true" 
        EnableViewState="true" onselectedindexchanged="testDrop_SelectedIndexChanged"&gt;
    &lt;asp:ListItem Value="1" Text="1"&gt;1&lt;/asp:ListItem&gt;
    &lt;asp:ListItem Value="2" Text="2"&gt;2&lt;/asp:ListItem&gt;
    &lt;/asp:DropDownList&gt;
&lt;/div&gt;
</code></pre>

<p>And here is the generated html:</p>

<pre><code>&lt;select id="ctl00_MainContent_rptAccordion_ctl00_statControl_testDrop" onchange="javascript:setTimeout('__doPostBack(\'ctl00$MainContent$rptAccordion$ctl00$statControl$testDrop\',\'\')', 0)" name="ctl00$MainContent$rptAccordion$ctl00$statControl$testDrop"&gt;
    &lt;option value="1" selected="selected"&gt;1&lt;/option&gt;
    &lt;option value="2"&gt;2&lt;/option&gt;
&lt;/select&gt;
</code></pre>
