Gridview行删除 [英] Gridview row Deletion
本文介绍了Gridview行删除的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在gridview里面我正在使用删除图片按钮,在那里 删除click事件就在那里。我需要使用rowindex和event参数e删除特定的gridview行。
Inside gridview i am using delete image button,in that remove click event is there.I need to delete the particular gridview row using rowindex and event argument e.
protected void remove_Click(object sender, EventArgs e)
{
if (ViewState["CurrentTable"] != null)
{
//create new datatable, cast datatable of viewstate
DataTable dt = (DataTable)ViewState["CurrentTable"];
DataRow drCurrentRow = null;
int rowIndex = 0;
//int rowIndex = Convert.ToInt32(e.RowIndex);
if (dt.Rows.Count > 1)
{
for (int i = 1; i <= dt.Rows.Count; i++)
{
//extract the values
TextBox arrivcity = (TextBox)Gridview1.Rows[rowIndex].Cells[1].FindControl("Arrival_city");
TextBox arrivdate = (TextBox)Gridview1.Rows[rowIndex].Cells[2].FindControl("arrival_Date");
DropDownList arrivhours = (DropDownList)Gridview1.Rows[rowIndex].Cells[3].FindControl("ddlahrs");
DropDownList arrivmin = (DropDownList)Gridview1.Rows[rowIndex].Cells[4].FindControl("ddlamin");
TextBox dist = (TextBox)Gridview1.Rows[rowIndex].Cells[4].FindControl("Distance");
TextBox convey = (TextBox)Gridview1.Rows[rowIndex].Cells[5].FindControl("Conveyance");
TextBox depdate = (TextBox)Gridview1.Rows[rowIndex].Cells[6].FindControl("departure_Date");
DropDownList depthours = (DropDownList)Gridview1.Rows[rowIndex].Cells[3].FindControl("ddldhrs");
DropDownList deptmin = (DropDownList)Gridview1.Rows[rowIndex].Cells[4].FindControl("ddldmin");
TextBox amount = (TextBox)Gridview1.Rows[rowIndex].Cells[8].FindControl("txtAmount");
TextBox ticketno = (TextBox)Gridview1.Rows[rowIndex].Cells[9].FindControl("Ticket_number");
drCurrentRow = dt.NewRow();
dt.Rows[i - 1]["Column1"] = arrivcity.Text;
dt.Rows[i - 1]["Column2"] = arrivdate.Text;
dt.Rows[i - 1]["Column3"] = arrivhours.SelectedValue;
dt.Rows[i - 1]["Column4"] = arrivmin.SelectedValue;
dt.Rows[i - 1]["Column5"] = dist.Text;
dt.Rows[i - 1]["Column6"] = convey.Text;
dt.Rows[i - 1]["Column7"] = depdate.Text;
dt.Rows[i - 1]["Column8"] = depthours.SelectedValue;
dt.Rows[i - 1]["Column9"] = deptmin.SelectedValue;
dt.Rows[i - 1]["Column10"] = amount.Text;
dt.Rows[i - 1]["Column11"] = ticketno.Text;
rowIndex++;
}
//dt.Rows.RemoveAt(e.RowIndex);
//dt.Rows[rowIndex-1].Delete();
//dt.Rows[e.RowIndex].Delete();
//Gridview1.DeleteRow(rowIndex);
dt.Rows.RemoveAt(rowIndex - 2);
ViewState["CurrentTable"] = dt;
Gridview1.DataSource = dt;
Gridview1.DataBind();
}
SetPreviousData();
DisableTextBox1();
}
}
推荐答案
Hi Litty,
Hi Litty,
如果取消注释以下内容,它是否有效:
Doesn't it work if uncomment the below:
int rowIndex = Convert.ToInt32(e.RowIndex);
Gridview1.DeleteRow(rowIndex);
请您说明问题是怎样的?
Would you please describe how the issue's like?
我建议您可以在论坛中发布您的问题,以获得专业答案:
I recommend you could post your issue in the forum to get a professional answer:
https://forums.asp.net/24.aspx/1?Web+Forms+Data+Controls
祝你好运,
Fletch
这篇关于Gridview行删除的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文