page lifecycle - Is there an after Page_Load event in ASP.net -


is there event triggered after all page_load events have completed?

how can have more 1 page_load?
when have user controls.

before page can render, need page (and embedded controls) have initialized completing page_load events.

the problem, of course, if put code in page's page_load handler:

mypage.aspx    --> page_load           ---> dosomethingwithusercontrol() usercontrol1.ascx    --> page_load           ---> initialize ourselves viewstate has been restored 

then begin access usercontrol1 control before ready.

i need way run code after page_load events have fired, before postback events (e.g. click events) have fired:

mypage.aspx    --> page_load usercontrol1.ascx    --> page_load           ---> initialize ourselves viewstate has been restored mypage.aspx    --> page_afterload           ---> dosomethingwithusercontrol() 

looking @ page lifecycle in msdn looks there no way raise event after page_loads have been completed:

enter image description here

is there way raise after after page_loads have completed?

page_loadcomplete event raised after controls have been loaded

remember init event first triggered child controls, , when controls have been initialized, init event of page raised. load event works other way around, page first raises load event , each child control raises own load event. @ end loadcomplete raised. note true when controls created @ design time, when controls created dynamically (sadly) not follow approach strictly.

from msdn:

if controls created dynamically @ run time or declaratively within templates of data-bound controls, events not synchronized of other controls on page. example, for control added @ run time, init , load events might occur later in page life cycle same events controls created declaratively. therefore, time instantiated, dynamically added controls , controls in templates raise events 1 after other until have caught event during added controls collection.

take look:

(source: http://msdn.microsoft.com/en-us/library/ms178472.aspx)

enter image description here

edit 1

in order fulfill requirements:

i need way run code after page_load events have fired, before postback events (e.g. click events) have fired:

i think easiest way declare custom event in user control , fire after control has been loaded, jus subscribe event in aspx

user control

    public event action loadcompleted = delegate { };      protected void page_load(object sender, eventargs e)     {         this.loadcompleted();     } 

aspx page

    protected void page_load(object sender, eventargs e)     {         this.myusercontrol.loadcompleted += () =>          {             // somethign interesting             this.lblmessage.text = datetime.now.tostring();         };     } 

Comments

Popular posts from this blog

c# - SVN Error : "svnadmin: E205000: Too many arguments" -

c# - Copy ObservableCollection to another ObservableCollection -

All overlapping substrings matching a java regex -