Asp.net 动态绑定Gridview
****文本框的第二个值在gridview中添加和删除第一个值**** 代码Asp.net 动态绑定Gridview,asp.net,c#-4.0,aspxgridview,Asp.net,C# 4.0,Aspxgridview,****文本框的第二个值在gridview中添加和删除第一个值**** 代码 这之所以发生,是因为你写它是为了发生。 若要在网格视图中添加新记录,则在添加新记录之前,应保留现有记录 在本例中,您正在添加第一组记录,如下所示 DataTable dt1 = new DataTable(); dt1.Columns.Add(new DataColumn("Name", typeof(System.String))); dt1.Columns.Add(n
这之所以发生,是因为你写它是为了发生。 若要在网格视图中添加新记录,则在添加新记录之前,应保留现有记录 在本例中,您正在添加第一组记录,如下所示
DataTable dt1 = new DataTable();
dt1.Columns.Add(new DataColumn("Name", typeof(System.String)));
dt1.Columns.Add(new DataColumn("Age", typeof(System.String)));
dt1.Columns.Add(new DataColumn("Gender", typeof(System.String)));
dt1.Columns.Add(new DataColumn("Qualification", typeof(System.String)));
DataRow dr = dt1.NewRow();
dr["Name"] = TextBox1.Text;
dr["Age"] = TextBox2.Text;
dr["Gender"] = TextBox3.Text;
dr["Qualification"] = TextBox4.Text;
dt1.Rows.Add(dr);
DataSet ds = new DataSet();
ds.Tables.Add(dt1);
GridView1.DataSource = ds.Tables[0];
GridView1.DataBind();
这很好,您正在生成一些数据并将其绑定到网格视图。
当您试图绑定新数据时,您又在做同样的事情
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("Name", typeof(System.String)));
dt.Columns.Add(new DataColumn("Age", typeof(System.String)));
dt.Columns.Add(new DataColumn("Gender", typeof(System.String)));
dt.Columns.Add(new DataColumn("Qualification", typeof(System.String)));
DataRow dr1 = dt1.NewRow();
dr1["Name"] = TextBox1.Text;
dr1["Age"] = TextBox2.Text;
dr1["Gender"] = TextBox3.Text;
dr1["Qualification"] = TextBox4.Text;
dt.Rows.Add(dr1);
DataSet ds1 = new DataSet();
ds1.Tables.Add(dt);
GridView1.DataSource = ds1.Tables[0];
GridView1.DataBind();
这实际上是在取代网格视图的数据源,我认为更好的选择是使用某种viewstate存储来存储表值,并用网格视图再次绑定它们
试着这样做-
DataTable dt1 = new DataTable();
dt1.Columns.Add(new DataColumn("Name", typeof(System.String)));
dt1.Columns.Add(new DataColumn("Age", typeof(System.String)));
dt1.Columns.Add(new DataColumn("Gender", typeof(System.String)));
dt1.Columns.Add(new DataColumn("Qualification", typeof(System.String)));
DataRow dr = dt1.NewRow();
dr["Name"] = TextBox1.Text;
dr["Age"] = TextBox2.Text;
dr["Gender"] = TextBox3.Text;
dr["Qualification"] = TextBox4.Text;
dt1.Rows.Add(dr);
在此之后,在同一表格中添加新记录
DataRow dr1 = dt1.NewRow();
dr1["Name"] = TextBox1.Text;
dr1["Age"] = TextBox2.Text;
dr1["Gender"] = TextBox3.Text;
dr1["Qualification"] = TextBox4.Text;
dt1.Rows.Add(dr1);
DataSet ds1 = new DataSet();
ds1.Tables.Add(dt1);
GridView1.DataSource = ds1.Tables[0];
GridView1.DataBind();
这对你有用。
如果要动态添加数据,则应使用ViewState临时存储ds。否当我在DTROW中添加新数据行时,ds也不起作用。请检查我编辑的答案。。。它现在应该可以工作了:D
DataRow dr1 = dt1.NewRow();
dr1["Name"] = TextBox1.Text;
dr1["Age"] = TextBox2.Text;
dr1["Gender"] = TextBox3.Text;
dr1["Qualification"] = TextBox4.Text;
dt1.Rows.Add(dr1);
DataSet ds1 = new DataSet();
ds1.Tables.Add(dt1);
GridView1.DataSource = ds1.Tables[0];
GridView1.DataBind();