Page.LoadControl() is clearing my events
<p>Below is my method to add a <code>System.Web.UI.UserControl</code> that displays a help tip to a page dynamically...</p>

<pre><code>public static void AddHelpTip(string helpText, System.Web.UI.ControlCollection collection, System.Web.UI.Page page)
    {
        CWP.controls.HelpTip hTip = (CWP.controls.HelpTip)page.LoadControl("~/_controls/HelpTip.ascx");
        hTip.Text = helpText;
        hTip.StyleVal += " position:fixed;top:9px;left:9px;";
        collection.Add(hTip);
    }
</code></pre>

<p>Only on any page I use it all my drop down lists stop working, but not my buttons.</p>

<p>Drop down lists events are attached <code>OnLoad</code> in the page life cycle, and everything works until I use my <code>AddHelpTip</code> method, can someone provide a different solution that actually works, and/or explain whats going wrong. </p>

<p>More Code, as comments request:</p>

<p>in my aspx page :</p>

<pre><code>void Locations_Load(object sender, EventArgs e)
    {
        extendedInfo.Mode = CWP.Constants.MODE_LOCATION;

        CWP.Util.AddHelpTip("Store details", this.Controls, this.Page);
        ...
</code></pre>

<p>more in aspx page :</p>

<pre><code>void Locations_Init(object sender, EventArgs e)
    {
        this.Page.RegisterRequiresControlState(this);

        this.CustomMasterPage.ContentHeader = "Stores";

        this.ddlAccountSelect.SelectedIndexChanged += new EventHandler(ddlAccountSelect_SelectedIndexChanged);
        this.ddlLocationSelect.SelectedIndexChanged += new EventHandler(ddlLocationSelect_SelectedIndexChanged);

        this.btnAccounts.Click += new EventHandler(btnAccounts_Click);
        this.btnTerminals.Click += new EventHandler(btnTerminals_Click);
    }
</code></pre>

<p>Bearing in mind it works until I call my <code>AddHelpTip()</code> method, that is to say, if I comment out that code everything works as it should, calling that method means my drop down list start losing state, even all the items in the drop down lists are removed, as I'm loading the item inside a '<code>!this.IsPostBack</code>' if block it does it once, but <code>AddHelpTip</code> somehow even clears the items and the events dont fire</p>

<p>and my constructor :</p>

<pre><code>public Locations()
    {
        this.Init += new EventHandler(Locations_Init);
        this.Load += new EventHandler(Locations_Load);
        this._isSecure = true;
    }  
</code></pre>
