Default.aspx
- OnOutSourceUCDropDownList1_SelectedIndexChanged
<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
CodeBehind="Default.aspx.cs" Inherits="UserControlTest._Default" %>
<%@ Register Src="~/WebUserControl1.ascx" TagName="WebUserControl1" TagPrefix="uc" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
<h2>
Welcome to ASP.NET!
</h2>
<p>
To learn more about ASP.NET visit <a href="http://www.asp.net" target="_blank" rel="external nofollow" title="ASP.NET Website">www.asp.net</a>.
</p>
<p>
You can also find <a href="http://go.microsoft.com/fwlink/?LinkID=152368&clcid=0x409" target="_blank" rel="external nofollow"
title="MSDN ASP.NET Docs">documentation on ASP.NET at MSDN</a>.
</p>
<uc:WebUserControl1 ID="ucTest" runat="server" UserName="abc"
OnOutSourceUCDropDownList1_SelectedIndexChanged="UserControlDropDownList1_SelectedIndexChanged"/>
</asp:Content>
Default.aspx.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace UserControlTest
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void UserControlDropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
ucTest.LableValue = "yes";
}
}
}
Web Control Page
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl1.ascx.cs" Inherits="UserControlTest.WebUserControl1" %>
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %>
<telerik:RadScriptManager ID="RadScriptManager1" runat="server">
</telerik:RadScriptManager>
<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="DropDownList1">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="Label2" />
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManager>
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
<asp:DropDownList ID="DropDownList1" runat="server"
onselectedindexchanged="DropDownList1_SelectedIndexChanged" AutoPostBack="true">
<asp:ListItem>aa</asp:ListItem>
<asp:ListItem>bb</asp:ListItem>
<asp:ListItem>cc</asp:ListItem>
</asp:DropDownList>
<asp:Label ID="Label2" runat="server" Text="Label"></asp:Label>
Web Control cs Page
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace UserControlTest
{
public partial class WebUserControl1 : System.Web.UI.UserControl
{
public string UserName { get; set; }
public string LableValue
{
get
{
return Label2.Text;
}
set
{
Label2.Text = value;
}
}
public delegate void OnDropDownList1_SelectedIndexChanged(object sender, EventArgs e);
protected event OnDropDownList1_SelectedIndexChanged _outSourceUCDropDownList1_SelectedIndexChanged;
public event OnDropDownList1_SelectedIndexChanged OutSourceUCDropDownList1_SelectedIndexChanged
{
add
{
if (this._outSourceUCDropDownList1_SelectedIndexChanged == null)
this._outSourceUCDropDownList1_SelectedIndexChanged += value;
}
remove
{
if (this._outSourceUCDropDownList1_SelectedIndexChanged != null)
this._outSourceUCDropDownList1_SelectedIndexChanged -= value;
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Label1.Text = UserName;
}
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
if (this._outSourceUCDropDownList1_SelectedIndexChanged != null)
this._outSourceUCDropDownList1_SelectedIndexChanged(sender, e);
}
}
}
