Button添加事件委托问题
页面上有一个Button和一个UpdatePanel,为什么需要点击两次Button,UpdatePanel才更新,而不是点击一次. 代码如下,帮帮忙解决.
C# code
    protected void Page_Load(object sender, EventArgs e)
    {
        this.bt.Click += new EventHandler(PanelUpdate);  //添加事件委托      
    }
    void PanelUpdate(object sender, EventArgs e)
    {
        this.UpdatePanel1.Update();
    }
    protected void bt_Click(object sender, EventArgs e)   //Button点击事件
    {
        ......   ///一些代码 
         
    }
------解决方案--------------------你就不会把BUTTON的HTML里加上ONCLICK事件!!!!!
------解决方案--------------------onclientclick
------解决方案--------------------bt你给ID了没??如果没有那么就要点两次才会走。。。因为点第一次的时候程序会自动给bt赋个ID,然而不会走事件,所以需要点两次!!!
------解决方案--------------------设一下trigger
------解决方案--------------------......   ///一些代码  
放到void PanelUpdate(object sender, EventArgs e)
   {
       this.UpdatePanel1.Update();
   }
这个里
------解决方案--------------------调试下看 点击第一下 进没进入 PanelUpdate这个方法体中  
如果没进入 说明第一次点击的 没响应 button事件
------解决方案--------------------UpdatePanel的UpdateModel修改下属性 试试
------解决方案-------------------- protected void Page_Load(object sender, EventArgs e)
   {
       this.bt.Click += new EventHandler(PanelUpdate);  //添加事件委托     
   }
这里加个 if(IsPostBack)看下!
因为你一提交页面又重新加方法了!
------解决方案--------------------LZ看了你的问题 要点击两次 意思就是点第二次才调用到委托
------解决方案--------------------   protected void bt_Click(object sender, EventArgs e)   //Button点击事件
   {
       ......   ///一些代码  
this.UpdatePanel1.Update();       
   }
------解决方案--------------------第一次注册事件,第二次才会触发事件 !
------解决方案--------------------
其它问题先不说了,单就这个“刷新”的问题,我对你的代码做了一点修改。
首先对于Header.ascx.cs,我增加了两条代码,目的是抛出事件通知:
C# code
public partial class Header : System.Web.UI.UserControl
{
    public event Action CodeSession_Changed;
    protected void search_Click(object sender, EventArgs e)
    {
        if (!this.TextBox1.Text.Equals(""))
        {
            Session["code"] = this.TextBox1.Text;
            if (this.CodeSession_Changed != null)
                this.CodeSession_Changed();
        }
    }
}
------解决方案--------------------
wslxxd。。。