如何更新网格视图数据表中的行 [英] How can i update a row in grid view datatable
问题描述
网格视图在其上添加新行和更新而不是更新所选行,我在同一个提交按钮上插入和更新
什么我试过了:
protected void btnSubmitProject_Click(object sender,EventArgs e)
{
尝试
{
if(dt == null)
{
{
dt = new DataTable();
DataColumn dc1 = new DataColumn(ProjectName);
DataColumn dc2 = new DataColumn(Description);
DataColumn dc3 = new DataColumn(EntityID);
dt.Columns.Add(dc1);
dt.Columns.Add(dc2);
dt.Columns.Add(dc3);
}
DataRow dr1 = d t.NewRow();
dr1 [0] = txtProjectName.Text;
dr1 [1] = txtDescription.Text;
dr1 [ 2] = dt.Rows.Count + 1;
dt.Rows.Add(dr1);
会话[data_table] = dt;
gvProjects.DataSource =(DataTable)会话[data_table];
gvProjects.DataBind();
Panel3.Visible = false ;
Panel2.Visible = true;
}
else
{
DataRow [] rows = dt.Select( EntityID ='+ index +');
if(rows.Length> 0)
{
foreach(DataRow排成行)
{
row [ProjectName] = txtProjectName.Text;
row [Description] = txtDescription.Text;
row [ EntityID] =索引+ 1;
dt.AcceptChanges();
row.SetModified();
}
}
其他
{
DataRow dr1 = dt.NewRow();
dr1 [0] = txtProjectName.Text;
dr1 [1] = txtDescription.Text;
dr1 [2 ] = dt.Rows.Count + 1;
dt.Rows.Add(dr1);
}
会话[data_table] = dt;
gvProjects.DataSource = dt;
gvProjects.DataBind();
Panel3.Visible = false;
Panel2.Visible = true;
}
}
catch(Exception ex)
{
lblProjectmsg.Text = ex.Message;
}
ProjectClearfields();
}
protected void gvProjects_RowUpdating(object sender,GridViewUpdateEventArgs e)
{
Panel3.Visible = true;
Panel2.Visible = false;
string ProjectName = null;
string描述= null;
index = e.RowIndex;
for(int i = 0;我< gvProjects.Rows.Count; i ++)
{
ProjectName =((TextBox)gvProjects.Rows [index] .FindControl(txtProjectName))。文本。 Trim();
描述=((TextBox)gvProjects.Rows [index] .FindControl(txtDescription))。Text.Trim();
}
txtProjectName.Text = ProjectName;
txtDescription.Text = Description;
}
The Grid view adds a new row and updates on it instead of updating the selected row, I insert and update on the same submit button
What I have tried:
protected void btnSubmitProject_Click(object sender, EventArgs e)
{
try
{
if (dt == null)
{
{
dt = new DataTable();
DataColumn dc1 = new DataColumn("ProjectName");
DataColumn dc2 = new DataColumn("Description");
DataColumn dc3 = new DataColumn("EntityID");
dt.Columns.Add(dc1);
dt.Columns.Add(dc2);
dt.Columns.Add(dc3);
}
DataRow dr1 = dt.NewRow();
dr1[0] = txtProjectName.Text;
dr1[1] = txtDescription.Text;
dr1[2] = dt.Rows.Count + 1;
dt.Rows.Add(dr1);
Session["data_table"] = dt;
gvProjects.DataSource = (DataTable)Session["data_table"];
gvProjects.DataBind();
Panel3.Visible = false;
Panel2.Visible = true;
}
else
{
DataRow[] rows = dt.Select("EntityID='" + index + "'");
if (rows.Length > 0)
{
foreach (DataRow row in rows)
{
row["ProjectName"] = txtProjectName.Text;
row["Description"] = txtDescription.Text;
row["EntityID"] = index + 1;
dt.AcceptChanges();
row.SetModified();
}
}
else
{
DataRow dr1 = dt.NewRow();
dr1[0] = txtProjectName.Text;
dr1[1] = txtDescription.Text;
dr1[2] = dt.Rows.Count + 1;
dt.Rows.Add(dr1);
}
Session["data_table"] = dt;
gvProjects.DataSource = dt;
gvProjects.DataBind();
Panel3.Visible = false;
Panel2.Visible = true;
}
}
catch (Exception ex)
{
lblProjectmsg.Text = ex.Message;
}
ProjectClearfields();
}
protected void gvProjects_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
Panel3.Visible = true;
Panel2.Visible = false;
string ProjectName = null;
string Description = null;
index = e.RowIndex;
for (int i = 0; i < gvProjects.Rows.Count; i++)
{
ProjectName = ((TextBox)gvProjects.Rows[index].FindControl("txtProjectName")).Text.Trim();
Description = ((TextBox)gvProjects.Rows[index].FindControl("txtDescription")).Text.Trim();
}
txtProjectName.Text = ProjectName;
txtDescription.Text = Description;
}
推荐答案
protected void btnSubmitProject_Click(object sender,EventArgs e)
{
try
{
if(dt == null)
{
{
dt = new DataTable ();
DataColumn dc1 = new DataColumn(ProjectName);
DataColumn dc2 = new DataColumn(Descrip );
DataColumn dc3 = new DataColumn(EntityID);
dt.Columns.Add(dc1);
dt。 Columns.Add(dc2);
dt.Columns.Add(dc3);
}
DataRow dr1 = dt.NewRow();
dr1 [0] = txtProjectName.Text;
dr1 [1] = txtDescription.Text;
dr1 [2] = dt.Rows .Count + 1;
dt.Rows.Add(dr1);
Session [data_table] = dt;
gvProjects.DataSource =(DataTable)Session [data_table];
gvProjects.DataBind();
Panel3.Visible = false;
Panel2.Visible = true;
}
else
{
DataRow [] rows = dt.Select(EntityID ='+ index +');
if(rows.Length> ; 0)
{
foreach(DataRow排成行)
{
row [ProjectName] = txtProjectName.Text;
row [Description] = txtDescription.Text;
row [ EntityID] =索引+ 1;
dt.AcceptChanges();
row.SetModified();
}
}
其他
{
DataRow dr1 = dt.NewRow();
dr1 [0] = txtProjectName.Text;
dr1 [1] = txtDescription.Text;
dr1 [2 ] = dt.Rows.Count + 1;
dt.Rows.Add(dr1);
}
会话[data_table] = dt;
gvProjects.DataSource = dt;
gvProjects.DataBind();
Panel3.Visible = false;
Panel2.Visible = true;
}
}
catch(Exception ex)
{
lblProjectmsg.Text = ex.Message;
}
ProjectClearfields();
}
protected void btnSubmitProject_Click(object sender, EventArgs e)
{
try
{
if (dt == null)
{
{
dt = new DataTable();
DataColumn dc1 = new DataColumn("ProjectName");
DataColumn dc2 = new DataColumn("Description");
DataColumn dc3 = new DataColumn("EntityID");
dt.Columns.Add(dc1);
dt.Columns.Add(dc2);
dt.Columns.Add(dc3);
}
DataRow dr1 = dt.NewRow();
dr1[0] = txtProjectName.Text;
dr1[1] = txtDescription.Text;
dr1[2] = dt.Rows.Count + 1;
dt.Rows.Add(dr1);
Session["data_table"] = dt;
gvProjects.DataSource = (DataTable)Session["data_table"];
gvProjects.DataBind();
Panel3.Visible = false;
Panel2.Visible = true;
}
else
{
DataRow[] rows = dt.Select("EntityID='" + index + "'");
if (rows.Length > 0)
{
foreach (DataRow row in rows)
{
row["ProjectName"] = txtProjectName.Text;
row["Description"] = txtDescription.Text;
row["EntityID"] = index + 1;
dt.AcceptChanges();
row.SetModified();
}
}
else
{
DataRow dr1 = dt.NewRow();
dr1[0] = txtProjectName.Text;
dr1[1] = txtDescription.Text;
dr1[2] = dt.Rows.Count + 1;
dt.Rows.Add(dr1);
}
Session["data_table"] = dt;
gvProjects.DataSource = dt;
gvProjects.DataBind();
Panel3.Visible = false;
Panel2.Visible = true;
}
}
catch (Exception ex)
{
lblProjectmsg.Text = ex.Message;
}
ProjectClearfields();
}
这篇关于如何更新网格视图数据表中的行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!