我想要从文本框中获取数据,当点击按钮时,希望将这些数据插入到GridView
中。每次点击都应该创建新行,旧行不应被删除。但是每当我输入新数据并点击按钮时,旧行就会被删除,新行会代替它的位置。这是我的代码:
DataTable dt1 = new DataTable();
bool flag = false;
private void gridVIEWData()
{
dt1.Columns.Add("pName", typeof(string));
dt1.Columns.Add("pCategory", typeof(string));
dt1.Columns.Add("price", typeof(string));
dt1.Columns.Add("pQuantity", typeof(string));
dt1.Columns.Add("totalPrice", typeof(string));
}
protected void Button3_Click(object sender, EventArgs e)
{
if (!flag)
{
gridVIEWData();
flag = true;
Int32 total = Convert.ToInt32(txt_quantity.Text) * Convert.ToInt32(txt_price.Text);
DataRow dr = dt1.NewRow();
dr["pName"] = DropDownList2.SelectedItem;
dr["pCategory"] = DropDownList1.SelectedItem;
dr["price"] = txt_price.Text;
dr["pQuantity"] = txt_quantity.Text;
dr["totalPrice"] = total;
dt1.Rows.Add(dr);
GridView1.DataSource = dt1;
GridView1.DataBind();
}
else if (!IsPostBack)
{
Int32 total = Convert.ToInt32(txt_quantity.Text) * Convert.ToInt32(txt_price.Text);
DataRow dr = dt1.NewRow();
dr["pName"] = DropDownList2.SelectedItem;
dr["pCategory"] = DropDownList1.SelectedItem;
dr["price"] = txt_price.Text;
dr["pQuantity"] = txt_quantity.Text;
dr["totalPrice"] = total;
dt1.Rows.Add(dr);
GridView1.DataSource = dt1;
GridView1.DataBind();
}
}
Page_Load
中会发生什么?考虑重命名你的按钮。Button3
的目的不明显。 - Tim Schmelter