马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
呵呵,那你就关注微软的招聘信息以及别人的招聘经验啊,还有也不一定去做技术的,你如果真的想去就多了解了解。(其实我的意思是说想到微软做技术是很不容易的。上面的示例展现假如为用户控件中的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);
}
}
下面代码中的加粗代码为重点,我们先判别利用者有无给SortEventHander赋值,假如有,则将该事务增加到sortRadioList的SelectedIndexChanged事务会合。
注重自界说排序事务处:我们也能够用publiceventEventHandlerSortEventHander来复杂的界说事务,但我们晓得,任何事务的创立都是必要损耗必定资本,而在庞大的富控件中,常常会界说大批的事务开放给利用者,假如都是如许复杂的来界说,那末就会耗用年夜理体系资本,只管这些事务利用者都没有利用到,而经由过程base.Events.AddHandler来增加事务,就是将事务的创立与耗毁都交给Events事务来处置,也就是只要在事务被利用的时分才会被创立。
主要:假如想用户在点击sortRadioList的选择项时触发SortEventHander事务,那末我们必定要在挪用页面的Page_Load事务真正停止前,将SortEventHander事务增加到sortRadioList的SelectedIndexChanged事务的托付链中。如许,挪用页界说的SortEventHander事务才会触发。以是我们选择在CreateChildControls事务中将SortEventHander事务增加到sortRadioList的SelectedIndexChanged事务的托付链中,由于CreateChildControls事务会在Page_Load事务之前产生。
挪用页的利用代码:
在挪用页的OnInit事务中,将用户自界说的GroupPanel_SortEventHander事务经由过程托付增加到SingleMaster.GroupPanel.SortEventHander事务中。
protectedoverridevoidOnInit(EventArgse)
{
SingleMaster.GroupPanel.SortEventHander+=newEventHandler(GroupPanel_SortEventHander);
}
///<summary>
///点击排序按钮后事务
///</summary>
///<paramname="sender"></param>
///<paramname="e"></param>
protectedvirtualvoidGroupPanel_SortEventHander(objectsender,EventArgse)
{
}
本章仅是解说了怎样在asp.net用户控件中完成自界说事务的解题思绪,供老手参考。感觉很多控件都必须自己去写代码;用了WebMatrix感觉也不是很好,毕竟没有很强的WYSIWYG效果。现在就不知道如何是好了。 |