您现在的位置是:首页 > .NET

.NET

在asp.net用户控件中实现自定义事件

2020-11-21 11:29:57 .NET admin
下面的示例展示如果为用户控件中的RadioButtonList控件开放自定义事件。publicpartialclassSDGroupPanel:System.Web.UI.UserControl{//先在用户控件中定义一个RadioButt
下面的示例展示如果为用户控件中的RadioButtonList控件开放自定义事件。

publicpartialclassSDGroupPanel:System.Web.UI.UserControl
{
//先在用户控件中定义一个RadioButtonList控件
privateRadioButtonListsortRadioList=newRadioButtonList();

//然后声明一个事件,开放给使用者
privateobjectsortObject=newobject();
///<summary>
///自定义排序事件
///</summary>
publiceventEventHandlerSortEventHander
{
add{base.Events.AddHandler(sortObject,value);}
remove{base.Events.RemoveHandler(sortObject,value);}
}

然后在用户控件的CreateChildControls事件中将RadioButtonList控件添加到用户控件中。
protectedoverridevoidCreateChildControls()
{
sortRadioList.ID="sort_radiolist";
sortRadioList.Items.Add(newListItem("降序","0"));
sortRadioList.Items.Add(newListItem("升序","1"));
sortRadioList.RepeatDirection=RepeatDirection.Horizontal;
sortRadioList.RepeatLayout=RepeatLayout.Flow;
sortRadioList.AutoPostBack=true;

if(base.Events[sortObject]!=null)
{
EventHandlerev=base.Events[sortObject]asEventHandler;
this.sortRadioList.SelectedIndexChanged+=ev;
}


this.Controls.Add(sortRadioList);
}
}