日期:2014-05-18  浏览次数:21229 次

linkbutton 的消失原因,自动生成的linkbutton
protected void btnxz_Click(object sender, EventArgs e)
  {
  this.Panel1.Controls.Clear();
  int i = 0;
  string[] LbtnName = Choose().Substring(1).Split(',');
  foreach (string n in LbtnName)
  {
  LinkButton lbtn = new LinkButton();
  lbtn.ID = "lbtn" + (i++).ToString();
  lbtn.Text = n;
  lbtn.Click += new EventHandler(lbtn_Click);

  Literal objLiteral = new Literal();
  objLiteral.Text = " ";

  this.Panel1.Controls.Add(lbtn);
  this.Panel1.Controls.Add(objLiteral);
  }
  }
 void lbtn_Click(object sender, EventArgs e)
  {
  string LinkText = ((LinkButton)sender).Text;

  }
点击按钮自动生成linkbutton,然后点击linkbutton后,想实现linkbutton的功能,但是点击后,或者只要刷新页面 linkbutton就消失了,如何解决?

------解决方案--------------------
点击linkbutton后,重新page load了,控件重新载入,这个以编程方式生成的控件,当然也不存在了,
------解决方案--------------------
假如是webform由于页面的生命周期,在pageload事件以后执行的动态添加控件会在刷新或者postback后消失。
------解决方案--------------------
动态加的控件只要一进行提交,服务器端相当于刷新都会丢失的,

要不你就加html控件,然后点html控件的javascript客户端方法,他就不会消息了
------解决方案--------------------
在外面套个updatepanel