问题描述
DEFAULT.ASPX:<formid="form1"runat="server"><my_control:headID="head"runat="server"/>//head.ascx<asp:PlaceHolderID="PlaceHolder1"runat="server"></asp:PlaceHolder></form>
在点击head.ascx里的按纽时加载控件至PlaceHolder1:ControlmyControl=Page.LoadControl("lm_set.ascx");this.Parent.FindControl("PlaceHolder1").EnableViewState=false;this.Parent.FindControl("PlaceHolder1").Controls.Clear();this.Parent.FindControl("PlaceHolder1").Controls.Add(myControl);Session["my"]="lm_set";
default.aspx.csprotectedvoidPage_Load(objectsender,EventArgse)//用于防止点击lm_set.ascx里的按纽控件消失的问题{if(IsPostBack){if(Session["my"]!=null){if(Session["my"].ToString()=="lm_set"){ControlmyControl=Page.LoadControl("lm_set.ascx");PlaceHolder1.Controls.Add(myControl);}}}}
现在的问题是点击lm_set.ascx里面的按纽第一次没有反应,点击第二次才会执行事件,但是点击第二次过后,动态加载第另一个控件,再次加载lm_set.ascx后,第一次点击按纽就会正常执行事件,为什么?如何解决?