protected void GridViewSteps_RowCommand(object sender, GridViewCommandEventArgs e) { if (e.CommandName == "delete_click") { //int RowIndex = Convert.ToInt32((e.CommandArgument).ToString()); ////GridViewRow gvr = (GridViewRow)(((ButtonField)e.CommandSource).); //dt = new DataTable(); //dt.Columns.Add("Str", typeof(string)); //dt = (DataTable) ViewState["dtTable"]; //ViewState["dtTable"]= dt; //GridViewSteps.DataSource = dt; //GridViewSteps.DataBind(); DataTable dt = (DataTable)ViewState["dtTable"]; int index = Convert.ToInt32(e.CommandArgument); DataRow row = dt.Rows[index]; String stepId = row["Id"].ToString(); //GridViewRow row = GridViewSteps.Rows[index]; //String stepId = Server.HtmlDecode(row.Cells[2].Text); WorkflowsService workflowsService = new WorkflowsService(); workflowsService.DeleteWorkflowStep(txtboxName.Text, stepId); dt.Rows.RemoveAt(index); GridViewSteps.DataSource = dt; GridViewSteps.DataBind(); ViewState["dtTable"] = dt; } else { Response.Write("Cant"); } if (e.CommandName == "package_click") { // Retrieve the row index stored in the // CommandArgument property. int index = Convert.ToInt32(e.CommandArgument); // Retrieve the row that contains the button // from the Rows collection. GridViewRow row = GridViewSteps.Rows[index]; ListItem WfStepName = new ListItem(); WfStepName.Text = Server.HtmlDecode(row.Cells[1].Text); String WorkflowName = Server.HtmlDecode(txtboxName.Text); String stepId = Server.HtmlDecode(row.Cells[2].Text); Response.Redirect("EDITWorkflowTask.aspx?wfname=" + WfStepName + "&workflowname=" + WorkflowName + "&stepId=" + stepId); } else { } }