Okay, if I dynamically created a RadAjaxManager in a page's code-behind everything works fine. I followed the same technique as: http://www.telerik.com/community/forums/aspnet-ajax/ajax/nullreferenceexception-in-radajaxmanager-ajaxsettings-addajaxsetting.aspx
Then, I wanted to dynamically create the RadAjaxManager in a server control. So I added:
As you can imagine, I get the dreaded NullReferenceException.
Obviously, I don't want to require the end-user to add a RadAjaxManager to the page manually or in the parent page's OnInit. I want the control to be self-contained (i.e. adding the RadAjaxManager only when needed for the control).
How do I do this?
Thanks,
Joshua
Then, I wanted to dynamically create the RadAjaxManager in a server control. So I added:
#region private properties |
private RadAjaxManager _radAjaxManager = null; |
#endregion |
protected override void OnInit(EventArgs e) |
{ |
RadScriptManager scriptManager = new RadScriptManager(); |
Controls.Add(scriptManager); |
RadAjaxManager radAjaxManager = new RadAjaxManager(); |
radAjaxManager.ID = "radAjaxManager"; |
_radAjaxManager = radAjaxManager; |
Controls.Add(radAjaxManager); |
base.OnInit(e); |
scriptManager.Scripts.Add(new ScriptReference("Elevate.UI.Scripts.Search.js", "Elevate")); |
} |
protected override void CreateChildControls() |
{ |
RadAjaxLoadingPanel radAjaxLoadingPanel = new RadAjaxLoadingPanel(); |
radAjaxLoadingPanel.ID = "ajaxLoadingPanel"; |
radAjaxLoadingPanel.Skin = "Default"; |
Controls.Add(radAjaxLoadingPanel); |
/* Child Controls Creation */ |
_radAjaxManager.AjaxSettings.AddAjaxSetting(button1, simplePanel, radAjaxLoadingPanel); |
_radAjaxManager.AjaxSettings.AddAjaxSetting(linkButton1, simplePanel, radAjaxLoadingPanel); |
_radAjaxManager.AjaxSettings.AddAjaxSetting(lbMLS, simplePanel, radAjaxLoadingPanel); |
} |
As you can imagine, I get the dreaded NullReferenceException.
Obviously, I don't want to require the end-user to add a RadAjaxManager to the page manually or in the parent page's OnInit. I want the control to be self-contained (i.e. adding the RadAjaxManager only when needed for the control).
How do I do this?
Thanks,
Joshua