我有一个网格视图,我想在运行时将一些数据绑定到这个Gridview。
在我的按钮点击事件中,我这样写了
protected void Button1_Click(object sender, EventArgs e)
{
DataSet ds = new DataSet();
DataTable dt = new DataTable();
DataRow dr;
DataColumn dc = new DataColumn();
dc.Caption = "Name";
dc.DataType = Type.GetType("System.String");
dc.ColumnName = "Name";
dt.Columns.Add(dc);
dr = dt.NewRow();
dr["Name"] = TextBox1.Text;
dt.Rows.Add(dr);
ds.Tables.Add(dt);
GridView1.DataSource = ds;
GridView1.DataBind();
}
工作正常并显示数据。但是现在我想在gridview中添加多行。当我尝试绑定它时,每次只有一行添加到网格视图。 (即在文本框中输入的最近值)。我想将行追加到gridview。
我该怎么做?
答案 0 :(得分:0)
将ds存储到视图状态。
然后当你添加一个新行时。从viewstate中检索数据集,并添加一个包含在文本框中输入的最新值的新行。
as:
if(ViewState["ds"]!=null)
{
DataSet ds=(DataSet) ViewState["ds"];
dr = ds.Tables[0].NewRow();
dr["Name"] = TextBox1.Text;
ds.Tables[0].Rows.Add(dr);
GridView1.DataSource = ds;
GridView1.DataBind();
}