为什么我在按钮事件里用LoadControl动态载入的用户控件的按钮事件第一下不能产生事件呢?
我要Click2下才行,这是什么原因呢?参考代码:
public class FirstManager : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Panel Panel2;
protected System.Web.UI.WebControls.Button Button1;
protected System.Web.UI.WebControls.LinkButton LinkButton1;
protected System.Web.UI.WebControls.LinkButton LinkButton2;
protected System.Web.UI.WebControls.Panel Panel1;
private UserControl uc=null;
private string ucname;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面

if(uc!=null)
{
if(ucname!=Session["ctrlname"].ToString())
{
Panel2.Controls.Remove(uc);
if(Session["ctrlname"]!=null)
{
ucname=Session["ctrlname"].ToString();
uc=(UserControl)LoadControl(ucname);
Panel2.Controls.Add(uc);
uc=null;
}
}
}
else
{
if(Session["ctrlname"]!=null)
{
ucname=Session["ctrlname"].ToString();
uc=(UserControl)LoadControl(Session["ctrlname"].ToString());
Panel2.Controls.Add(uc);
}
} } private void Button1_Click(object sender, System.EventArgs e)
{
SetCurControl("devsearch.ascx");
} private void LinkButton1_Click(object sender, System.EventArgs e)
{
SetCurControl("PullIn.ascx");
}
private void SetCurControl(string filename)
{
string ctrlname=filename;
/* if(Session["ctrlname"]==null)
{
UserControl pi=(UserControl)LoadControl(ctrlname);
Panel2.Controls.Add(pi);
}
*/ Session["ctrlname"]=ctrlname;
Page_Load(this,null);
} private void LinkButton2_Click(object sender, System.EventArgs e)
{
SetCurControl("devsearch.ascx");
}
}