问题描述
先生您好,
我通过提交按钮输入一些数据到带有5个文本框的gridview中.为此,我创建了一个数据表,并添加了这些列和行.但是每当我进入第二行时,它就会覆盖第一行而不显示两行.
我的要求是我要输入100行并在gridview中显示它们.为此,我该怎么办?如果有人知道,请帮助我.有人请给我适当的解决方法.
如何编写for循环以每次创建新行.
我的代码如下.
谢谢.
Hello sir,
I am entering some data to gridview with 5 textboxes by submit button. For this I created a datatable and I added those columns and rows. But whenever I am entering in second row, it is overriding the first row and not displaying two rows.
My requirement is that I want to enter 100 rows and display them in gridview. To do this what do I do? If anybody knows, please help me. Somebody please give me a proper solution.
How can I write a for loop to create new row every time.
My code is below.
Thank you.
public partial class PurchaseOrder1 : System.Web.UI.Page
{
DataTable dt = new DataTable();
protected void GVProductOrderBind()
{
GVProductOrder.DataSource = dt;
GVProductOrder.DataBind();
Session["GVTable"] = dt;
}
protected void InsertToGrid()
{
DataRow drNew = dt.NewRow();
drNew["ItemCode"] = TxtItemCode.Text;
drNew["ItemName"] = TxtItemDescription.Text;
drNew["EanCode"] = TxtEanCode.Text;
drNew["Cost"] = TxtCP.Text;
drNew["MRP"] = TxtMRP.Text;
drNew["SP"] = TxtSP.Text;
drNew["MBQ"] = TxtACP.Text;
drNew["Quantity"] = TxtQty.Text;
drNew["FreeQty"] = TxtFreeQty.Text;
drNew["FixedDisc"] = TxtDiscPercentage.Text;
drNew["Tax"] = TxtTaxPercentage.Text;
drNew["Value"] = TxtValue.Text;
drNew["OnOrder"] = TxtOnOrder.Text;
drNew["Remarks"] = TxtQOH.Text;
drNew["Type"] = TxtUOP.Text;
dt.Rows.Add(drNew);
GVProductOrderBind();
}
protected void Page_Load(object sender, EventArgs e)
{
try
{
//dt.Columns.Add("ItemCode", System.Type.GetType("System.String"));
DataRow dr = dt.NewRow();
dt.Columns.Add("ItemCode");
dt.Columns.Add("ItemName");
dt.Columns.Add("EanCode");
dt.Columns.Add("Cost");
dt.Columns.Add("MRP");
dt.Columns.Add("SP");
dt.Columns.Add("MBQ");
dt.Columns.Add("Quantity");
dt.Columns.Add("FreeQty");
dt.Columns.Add("FixedDisc");
dt.Columns.Add("Tax");
dt.Columns.Add("Value");
dt.Columns.Add("OnOrder");
dt.Columns.Add("Remarks");
dt.Columns.Add("Type");
dt.Rows.Add(dr);
GVProductOrderBind();
}
catch (Exception ex)
{
throw ex;
}
}
protected void BtnClose_Click(object sender, EventArgs e)
{
Response .Redirect ("~/Welcome.aspx");
}
protected void BtnSave_Click(object sender, EventArgs e)
{
try
{
DataTable dt = (DataTable)Session["GVTable"];
InsertToGrid();
}
catch (Exception ex)
{
throw ex;
}
}
}
推荐答案
Datatable dt=new Datatable();
删除这些
Remove these,
DataRow dr = dt.NewRow();
dt.Rows.Add(dr);
看起来还好吧尝试一下
ther seem all right Try IT
这篇关于每次向gridview中的数据表添加新行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!