asp.net中的自动更新表

时间:2013-03-03 11:34:13

标签: asp.net

我有问题。我试图在网站上制作一张桌子。每次用户添加记录时,它都会显示在网站上。用户可以在表格上添加更多记录。我的问题是如何让表格自动显示记录而不将数据保存到数据库中并在网站表格中将其显示为显示?

1 个答案:

答案 0 :(得分:1)

您可以利用gridviewdatatableviewstate
最初,您可以创建datatable并将其绑定在gridview中 同时将datatable保留在viewstate中 下次用户添加一些数据时,在data-table中添加一个新行 更新viewstate数据 再次绑定gridview

编辑1

将数据添加到数据表

DataTable dt=new DataTable();
dt.column.Add("Name",typeof(string));
dt.column.Add("Age",typeof(int));

DataRow dr=dt.NewRow();
dr["Name"]="Mohammad"; // or dr[0]="Mohammad";
dr["Age"]=24; // or dr[1]=24;
dt.add.rows(dr);

dr=dt.NewRow();
dr["Name"]="Shahnawaz"; // or dr[0]="Shahnawaz";
dr["Age"]=24; // or dr[1]=24;
dt.add.rows(dr);

GridView1.DataSource=dt;
GridView1.DataBind();

将数据表存储在视图状态

ViewState["dataTable"] = dt;

现在假设您有文本框t1和t2

Datatable dt=ViewState["dataTable"] as DataTable;
dr=dt.NewRow();
dr["Name"]=t1.text; // or dr[0]="Shahnawaz";
dr["Age"]=t2.text; // or dr[1]=24;
dt.add.rows(dr);

再次将其绑定到gridview

GridView1.DataSource=dt;
GridView1.DataBind();

并将数据表保持在视图状态

ViewState["dataTable"] = dt;