C# 从文本框填充网格视图,并在每次单击按钮时递归地删除列表值
我想在单击按钮时用文本框和下拉列表值递归填充网格视图。目前它只绑定一次。我是ASP.NET新手。非常感谢您的帮助C# 从文本框填充网格视图,并在每次单击按钮时递归地删除列表值,c#,asp.net,C#,Asp.net,我想在单击按钮时用文本框和下拉列表值递归填充网格视图。目前它只绑定一次。我是ASP.NET新手。非常感谢您的帮助 protected void btnAdd_Click(object sender, EventArgs e) { DataTable dt = new DataTable(); DataRow dr; dt.Columns.Add("Resource"); dt.Columns.Add("availa
protected void btnAdd_Click(object sender, EventArgs e)
{
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add("Resource");
dt.Columns.Add("available");
for (int intCnt = 0; intCnt < grd.Rows.Count - 1; intCnt++)
{
if (grd.Rows[intCnt].RowType == DataControlRowType.DataRow)
{
dr = dt.NewRow();
dr["Resource"] = grd.Rows[intCnt].Cells[0];
dr["available"] = grd.Rows[intCnt].Cells[1];
dt.Rows.Add(dr);
}
}
dr = dt.NewRow();
dr["Resource"] = ddlResource.SelectedItem.Text;
dr["available"] = txtavailable.Text;
dt.Rows.Add(dr);
grd.DataSource = dt;
grd.DataBind();
}
protectedvoidbtnadd\u单击(对象发送者,事件参数e)
{
DataTable dt=新的DataTable();
数据行dr;
dt.列。添加(“资源”);
dt.列。添加(“可用”);
对于(intCnt=0;intCnt
请尝试此功能,希望它能有所帮助
protected void btnAdd_Click(object sender, EventArgs e)
{
DataTable dt = new DataTable();
DataRow dr;
dt.Columns.Add("Resource");
dt.Columns.Add("available");
foreach(GridViewRow row in grd.Rows)
{
dr = dt.NewRow();
dr["Resource"] = row.Cells[0].Text;
dr["available"] =row.Cells[1].Text;
dt.Rows.Add(dr);
}
dr = dt.NewRow();
dr["Resource"] = ddlResource.SelectedItem.Text;
dr["available"] = txtavailable.Text;
dt.Rows.Add(dr);
grd.DataSource = dt;
grd.DataBind();
}
使用以下代码:
protected void btnAdd_Click(object sender, EventArgs e)
{
DataTable dt = new DataTable();
dt = defineColumn();
DataRow dr;
foreach (GridViewRow grow in grdChMedicine.Rows)
{
dr = dt.NewRow();
dr["Diagnosis"] = grow.Cells[1].Text;
dr["DiagnosisId"] = grow.Cells[2].Text;
dt.Rows.Add(dr);
}
dr = dt.NewRow();
dr["Diagnosis"] = ddldiagnosis.SelectedItem.ToString();
dr["DiagnosisId"] = ddldiagnosis.SelectedValue;
dt.Rows.Add(dr);
ViewState["ChMedicine"] = dt;
grdChMedicine.DataSource = dt;
grdChMedicine.DataBind();
}
private DataTable defineColumn()
{
DataTable dt = new DataTable();
dc = new DataColumn("Diagnosis");
dt.Columns.Add(dc);
dc = new DataColumn("DiagnosisId");
dt.Columns.Add(dc);
return dt;
}
已成功添加第一行,但将下一行添加到网格时出现此错误指定的参数超出了有效值的范围。@Abfab Ahmed对我使用未赋值变量(dr)时出错的代码段进行了注释