Hi Geert,
You should use a RadAjaxManager on your master page and then RadAjaxManagerProxy controls on your content pages. When creating the AjaxSettings dynamically in your content page code-behind, simply get a reference to the RadAjaxManager on the master page and add an AjaxSetting which causes each control to update the error control on your Master Page.
Here is a quick example:
Master.Master
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Master.master.cs" Inherits="Telerik.Examples.Master" %> |
|
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %> |
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> |
|
<html xmlns="http://www.w3.org/1999/xhtml" > |
<head runat="server"> |
<title>Example - Always Updating a Control with the RadAjaxManager</title> |
</head> |
<body> |
<form id="form1" runat="server"> |
<telerik:RadScriptManager ID="RadScriptManager1" runat="server" /> |
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" /> |
<asp:Label ID="lblTimeMaster" runat="server" /> |
<asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server" /> |
</form> |
</body> |
</html> |
|
Master.Master.cs
using System; |
|
namespace Telerik.Examples |
{ |
public partial class Master : System.Web.UI.MasterPage |
{ |
protected void Page_Load(object sender, EventArgs e) |
{ |
lblTimeMaster.Text = DateTime.Now.ToString(); |
} |
} |
} |
|
Default.aspx
<%@ Page Title="" Language="C#" MasterPageFile="~/Master.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Telerik.Examples.Default" %> |
|
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %> |
|
<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolder1" runat="server"> |
<telerik:RadAjaxManagerProxy ID="RadAjaxManagerProxy1" runat="server"> |
<AjaxSettings> |
<telerik:AjaxSetting AjaxControlID="Button1"> |
<UpdatedControls> |
<telerik:AjaxUpdatedControl ControlID="lblTime" /> |
</UpdatedControls> |
</telerik:AjaxSetting> |
</AjaxSettings> |
</telerik:RadAjaxManagerProxy> |
|
<asp:Label ID="lblTime" runat="server" /> |
|
<asp:Button ID="Button1" runat="server" Text="Click Me!" /> |
</asp:Content> |
|
Default.aspx.cs
using System; |
using System.Web.UI; |
using Telerik.Web.UI; |
|
namespace Telerik.Examples |
{ |
public partial class Default : System.Web.UI.Page |
{ |
protected void Page_Load(object sender, EventArgs e) |
{ |
var ajaxManager = Page.Master.FindControl("RadAjaxManager1") as RadAjaxManager; |
if (ajaxManager != null) |
{ |
var setting = new AjaxSetting("Button1"); |
var updatedControl = new AjaxUpdatedControl { ControlID = "lblTimeMaster" }; |
setting.UpdatedControls.Add(updatedControl); |
ajaxManager.AjaxSettings.Add(setting); |
} |
|
lblTime.Text = DateTime.Now.ToLongTimeString(); |
} |
} |
} |
|
I hope this helps. If you have further questions, please let me know.
Sincerely,
Kevin Babcock