RadControls version |
RadControls 'Prometheus' for ASPNET Q3 2007
|
.NET version |
2.0
|
Visual Studio version |
2005
|
programming language |
C# 2.0
|
browser support |
all browsers supported by RadControls
|
PROJECT DESCRIPTION
RadAjaxManager will throw exception as two instances occur on the same page. Directly putting it onto a module will lead to this exceptions, since many of module instance can be placed on the same pages.
In ASP.NET, one may put RadAjaxManager on MasterPage and all pages use RadAjaxManagerProxy to solve this issue. However, under DotNetNuke(DNN) environment, you can't, because DNN doesn't utilize MasterPage mechainism; instead it takes its own mechanism that each page is dynamically generated by the only one page(Default.aspx). It is unwise to instrusively modify Default.aspx even if you can do that.
This thread provides a mechanism to solve this issue, which is first used by DNN to register ScriptManager (a page can contain just one instance of ScriptManager).
You can register a RadAjaxManager as follows
protected void Page_Init(object sender, EventArgs e)
{
if (DotNetNuke.Framework.AJAX.IsInstalled())
{
DotNetNuke.Framework.AJAX.RegisterScriptManager();
TelerikAjaxUtility.InstallRadAjaxManager();
}
}
And then get the RadAjaxManager with TelerikAjaxUtility.GetCurrentRadAjaxManager() when needed. Most of time, you can communicate RadAjaxManagerProxy to handle all the work without getting RadAjaxManager. The source code is self-explained. Enjoy!
Regards,
Ricky.