title: Is there an after Page_Load event in ASP.net
body: <p>Is there an event that is triggered after <em>all</em> <code>Page_Load</code> events have completed?</p>
  
  <blockquote>
    <p>How can i have more than one <code>Page_Load</code>?<br>
    When you have user controls.</p>
  </blockquote>
  
  <p>Before my page can render, i need my page (and all embedded controls) to have initialized themselves by completing their <code>Page_Load</code> events.</p>
  
  <p>The problem, of course, is that if i put code in my page's <code>Page_Load</code> handler:</p>
  
  <pre><code>MyPage.aspx
     --&gt; Page_Load
            ---&gt; DoSomethingWithUserControl()
  UserControl1.ascx
     --&gt; Page_Load
            ---&gt; initialize ourselves now that viewstate has been restored
  </code></pre>
  
  <p>then i begin to access my <code>UserControl1</code> control before it is ready. </p>
  
  <p>i need a way to run code <em>after</em> all <code>Page_Load</code> events have fired, but <em>before</em> any postback events (e.g. Click events) have fired:</p>
  
  <pre><code>MyPage.aspx
     --&gt; Page_Load
  UserControl1.ascx
     --&gt; Page_Load
            ---&gt; initialize ourselves now that viewstate has been restored
  MyPage.aspx
     --&gt; Page_AfterLoad
            ---&gt; DoSomethingWithUserControl()
  </code></pre>
  
  <p>Looking at the page lifecycle in MSDN it looks like there is no way to raise an event <em>after</em> all Page_Loads have been completed:</p>
  
  <p><img src="https://i.stack.imgur.com/1uf52.gif" alt="enter image description here"></p>
  
  <p>Is there a way to raise an after <em>after</em> all Page_Loads have completed?</p>