ASP.net中GridView中增加一行记录并默认显示为编辑状态

时间:2021-11-14 22:16:51
//添加
protected void Button1_Click(object sender, EventArgs e)
{ DataSet ds = (DataSet)pa.GetDataSet();//获得gridview中数据源
DataTable dt = ds.Tables[0];//获得数据源中表
DataRow dr = dt.NewRow();//在表中增加一行
dt.Rows.Add(dr);//新行加入表中 GridView1.EditIndex = dt.Rows.Count - 1;//将新加入的行置于编辑状态 DataGridViewBind(dt);//绑定数据 } //数据绑定,指定数据
public void DataGridViewBind(DataTable dtPara)
{
GridView1.DataSource = dtPara;
GridView1.DataBind();
} 此时界面上显示新增一行,并显示的字段都可编辑,只需输入数据,然后自己写保存到数据库表的程序。 //获得输入的值 //更新
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
int intIDTemp = 0; if (GridView1.DataKeys[e.RowIndex].Value.ToString() != "")
{
intIDTemp = Convert.ToInt32(GridView1.DataKeys[e.RowIndex].Value);
}
string strDaiMaTemp = ((TextBox)(GridView1.Rows[GridView1.EditIndex].Cells[3].Controls[0])).Text.Trim();
string strMingChengTemp = ((TextBox)(GridView1.Rows[GridView1.EditIndex].Cells[4].Controls[0])).Text.Trim(); pa.ID = intIDTemp;
pa.DaiMa = strDaiMaTemp;
pa.MingCheng = strMingChengTemp;
pa.Save(); GridView1.EditIndex = -1;
DataGridViewBind();
} 这种方法比较适合字段少的表,直接添加记录,但是如果有分页就不行了。因为分页是重新绑定数据了。