Hi,
I have a master page which has its content area wrapped inside an updatepanel. To facilitate debugging, I'ld like to "disable" the updatepanel when the request URL contains ?debug=true.
I understood that to disable the updatepanel, setting EnablePartialRendering to false should do the trick. This can only be done from PreInit.
The problem I'm facing now is that:
The master page doesn't have an OnPreInit method to overrideWhen I override the OnPreInit in the content page, there's no ScriptManager available (via ScriptManager.GetCurrent(Page)), since the ScriptManager is defined in the master page.Any idea on how I can solve this without having to create 2 master pages (with & without the UpdatePanel) and dynamically switching between both?
Wouter
Locate the WebpartManger in masterpage by
this.MasterPage.FindControl("yourwebpartmangerid");
Thanks for the hint. I was able to locate the scriptmanager in this way and disable the partial rendering.
However, a new problem arose after I did all this. The page showed two assert popup boxes:
"Assertion Failed: Could not resolve reference to object named "_PageRequestManager" for "dataContext" property on object of type "Sys.Binding""
"Assertion Failed: No data context available for binding with ID "" and dataPath "inPostBack" on object of type "Sys.UI.Control""
I've tracked this down to the UpdateProgress control, which still renders xml-script while EnablePartialRendering is false (see also http://forums.asp.net/thread/1250774.aspx)
I'm now trying to programmatically remove or disable the UpgradeProgress control as well, but had no luck so far :(
hello.
ah, i remember that...well, in fact, the class has 2 bugs:
1. the 1st is that it renders xml-script without checking for its visible property
2. the 2nd is that the interface is implemented explicitly without any delegation to a protected virtual method (this would let you easilly fix this).
so, your best option is to write your own updateprogress control.
No comments:
Post a Comment