| Author: Praveen 03 Nov 2009 | Member Level: Diamond | Rating:  Points: 2 |
hi,
you can try like this
Design Code
<div> <asp:TextBox ID="txtName" runat="server"></asp:TextBox> <asp:RequiredFieldValidator ID="Req21" runat="server" ErrorMessage="Enter some value" Display="Dynamic" ControlToValidate="txtName"></asp:RequiredFieldValidator> <asp:Button ID="btnAdd" runat="server" Text="Add" onclick="btnAdd_Click" /> <asp:GridView ID="GridView1" runat="server" AllowPaging="false" AutoGenerateColumns="false" onrowdeleting="GridView1_RowDeleting"> <Columns> <asp:TemplateField Visible="false"> <ItemTemplate> <asp:Label ID="lblId" runat="server" Text='<%# Eval("Id") %>'></asp:Label> </ItemTemplate> </asp:TemplateField> <asp:TemplateField HeaderText="Name"> <ItemTemplate> <%# Eval("Name") %> </ItemTemplate> </asp:TemplateField> <asp:CommandField ShowDeleteButton="true" DeleteText="Delete" HeaderText="Delete" /> </Columns> </asp:GridView> </div>
server Side Code
protected void btnAdd_Click(object sender, EventArgs e) { try { GridView1.DataSource = BuildTable(txtName.Text.Trim()); GridView1.DataBind(); } catch (Exception ex) { Response.Write(ex.Message); } }
private DataTable getTableStructure() { DataTable dtReturn = null; try { dtReturn = new DataTable(); dtReturn.Columns.Add("Id", typeof(int)); dtReturn.Columns.Add("Name", typeof(string)); return dtReturn; } catch (NullReferenceException) { throw; } finally { if (dtReturn != null) dtReturn = null; } }
private DataTable BuildTable(string Value) { DataTable dtTable = null; try { if (Session["GridView"] == null) dtTable = getTableStructure(); else dtTable = (DataTable)Session["GridView"]; DataRow drNewRow = null; drNewRow = dtTable.NewRow(); drNewRow[0] = dtTable.Rows.Count + 1; drNewRow[1] = Value; dtTable.Rows.Add(drNewRow); drNewRow = null; Session["GridView"] = null; Session["GridView"] = dtTable; return dtTable; } catch (NullReferenceException) { throw; } } protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e) { try { DataTable dtData = (DataTable)Session["GridView"]; int ColumnId = Convert.ToInt32(((Label)GridView1.Rows[e.RowIndex].FindControl("lblId")).Text); DataRow[] drRemove = dtData.Select("Id=" + ColumnId); foreach (DataRow dr in drRemove) dtData.Rows.Remove(dr); Session["GridView"] = null; Session["GridView"] = dtData; GridView1.DataSource = dtData; GridView1.DataBind(); } catch (Exception ex) { Response.Write(ex.Message); } }
copy and paste the above code to know the flow of the work
hope that will give you an idea
|
| Author: nitin 03 Nov 2009 | Member Level: Silver | Rating:  Points: 2 |
i want to delete row from only grid view not in database..
|
| Author: Praveen 03 Nov 2009 | Member Level: Diamond | Rating:  Points: 2 |
hey
i'm deleting only from the datatable not from the database and my code is not interacting with the database?
|