那个帖子的地址:
http://community.csdn.net/Expert/topic/5479/5479321.xml?temp=.8438074是这样的,我动态添加了一个删除按钮 Button delete = new Button();
delete.ID = "delete" + i.ToString();
delete.Text = "删除";
delete.Click += new EventHandler(this.deleteresv);以及几个控件 TextBox lea_dt = new TextBox();
lea_dt.ID = "lea_dt" + i.ToString();
lea_dt.Text = DateTime.Today.ToShortDateString();
lea_dt.Width = 90; Label rm_num = new Label();
rm_num.ID = "rm_num" + i.ToString();
rm_num.Text = "1";
rm_num.Width = 20;他们都是以行的,有标示可以区分现在我想点击按钮以后,所有的这行的控件都被删除我用的就是delete.Click += new EventHandler(this.deleteresv);但是我断点以后,发现根本不会执行deleteresv这个函数,请问是怎么回事?哪里的问题顺便说一下: protected void Page_Load(object sender, EventArgs e)
{ }
我的Page_Load啥也没有写,是不是这里的问题,如果要写,应该写什么呢?谢谢大家
http://community.csdn.net/Expert/topic/5479/5479321.xml?temp=.8438074是这样的,我动态添加了一个删除按钮 Button delete = new Button();
delete.ID = "delete" + i.ToString();
delete.Text = "删除";
delete.Click += new EventHandler(this.deleteresv);以及几个控件 TextBox lea_dt = new TextBox();
lea_dt.ID = "lea_dt" + i.ToString();
lea_dt.Text = DateTime.Today.ToShortDateString();
lea_dt.Width = 90; Label rm_num = new Label();
rm_num.ID = "rm_num" + i.ToString();
rm_num.Text = "1";
rm_num.Width = 20;他们都是以行的,有标示可以区分现在我想点击按钮以后,所有的这行的控件都被删除我用的就是delete.Click += new EventHandler(this.deleteresv);但是我断点以后,发现根本不会执行deleteresv这个函数,请问是怎么回事?哪里的问题顺便说一下: protected void Page_Load(object sender, EventArgs e)
{ }
我的Page_Load啥也没有写,是不是这里的问题,如果要写,应该写什么呢?谢谢大家
{
this.Controls.Remove(button4);
}
what are you thinking about?
很有可能楼主对asp.net的生命周期理解有误
还有你deleteresv()方法怎么写的?
谢谢大家,给分吧~~呵呵using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;public partial class control_WebUserControl : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
//跟踪用户控件状态值
ViewState["DataFieldCount"] = 0;
}
else
{
int a =(int)ViewState["DataFieldCount"];
for (int counter = 0; counter < a; counter++)
{
AddDataField(counter.ToString());
}
}
}
protected void Button1_Click1(object sender, EventArgs e)
{
AddDataField(ViewState["DataFieldCount"].ToString());
ViewState["DataFieldCount"] = (int)ViewState["DataFieldCount"] + 1;
} private void AddDataField(string strFieldNum)
{
int i = 0;
i = Convert.ToInt32(strFieldNum); int j = 100;
if (i < j)
{ Button delete = new Button();
delete.ID = "delete" + i.ToString();
delete.Text = "删除"; TextBox arr_dt = new TextBox();
arr_dt.ID = "arr_dt" + i.ToString();
arr_dt.Text = DateTime.Today.ToShortDateString();
arr_dt.Width = 90;
TextBox lea_dt = new TextBox();
lea_dt.ID = "lea_dt" + i.ToString();
lea_dt.Text = DateTime.Today.AddDays(+1).ToShortDateString();
lea_dt.Width = 90; TextBox rm_num = new TextBox();
rm_num.ID = "rm_num" + i.ToString();
rm_num.Text = "1";
rm_num.Width = 20; TextBox pre_num = new TextBox();
pre_num.ID = "pre_num" + i.ToString();
pre_num.Text = "1";//是否取床位数?
pre_num.Width = 20; DropDownList rm_typ = new DropDownList();
rm_typ.ID = "rm_typ" + i.ToString(); Panel1.Controls.Add(arr_dt);
Panel1.Controls.Add(lea_dt);
Panel1.Controls.Add(rm_typ);
Panel1.Controls.Add(rm_num);
Panel1.Controls.Add(pre_num);
Panel1.Controls.Add(delete);
delete.Attributes.Add("onclick", "return confirm('确定要删除该字段吗?');");
delete.Click += new EventHandler(btnDelRow_Click);
}
}
private void btnDelRow_Click(object sender, System.EventArgs e)
{
ViewState["DataFieldCount"] = (int)ViewState["DataFieldCount"] - 1;
Button delete = (Button)sender;
string id = delete.ClientID;
string idcut = id.Substring(22);
TextBox arr_dt = new TextBox();
TextBox lea_dt = new TextBox();
TextBox pre_num = new TextBox();
TextBox rm_num = new TextBox();
DropDownList rm_typ = new DropDownList(); Panel1.Controls.Remove(Panel1.FindControl("arr_dt" + idcut));
Panel1.Controls.Remove(Panel1.FindControl("lea_dt" + idcut));
Panel1.Controls.Remove(Panel1.FindControl("pre_num" + idcut));
Panel1.Controls.Remove(Panel1.FindControl("rm_num" + idcut));
Panel1.Controls.Remove(Panel1.FindControl("rm_typ" + idcut));
Panel1.Controls.Remove(Panel1.FindControl("delete" + idcut)); }
}