Wednesday 5 July 2017

Grid Save, edit, Delete using Grid ItemTemplate


<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="demo.aspx.cs" Inherits="DemoSolution.demo" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
        <div>
            <table style="border: solid 1px; border-color: black">
                <tr>
                    <td>Name :
                    </td>
                    <td>
                        <asp:TextBox ID="TextBox1" required="" runat="server"></asp:TextBox>
                    </td>
                </tr>
                <tr>
                    <td>Email :
                    </td>
                    <td>
                        <asp:TextBox ID="TextBox2" required="" TextMode="Email" runat="server"></asp:TextBox>
                    </td>
                </tr>
                <tr>
                    <td></td>
                    <td style="text-align: center">
                        <asp:Button ID="btn_save" runat="server" Text="Save" OnClick="btn_save_Click" />
                        <asp:Button ID="btn_Delete" runat="server" Text="Cancel" OnClick="btn_Delete_Click" />
                    </td>
                </tr>
            </table>
            <br />
            <br />
            <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
                <Columns>
                    <asp:BoundField DataField="name" HeaderText="name" />
                    <asp:BoundField DataField="email" HeaderText="email" />
                    <asp:TemplateField>
                        <ItemTemplate>
                            <asp:Label ID="lb" runat="server" Text='<%#Eval("id") %>' Visible="false"></asp:Label>
                            <asp:Button ID="btn_edit" runat="server" Text="Edit" OnClick="btn_edit_Click" />
                        </ItemTemplate>
                    </asp:TemplateField>
                </Columns>
            </asp:GridView>
        </div>
    </form>
</body>

</html>






using DemoSolution.Models;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace DemoSolution
{
    public partial class demo : System.Web.UI.Page
    {
        Database1Entities db = new Database1Entities();
        tbl_Login tb = new tbl_Login();
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                Grid();
            }
        }
        protected void Grid()
        {
            var grid = (from a in db.tbl_Login
                        select new
                        {
                            id = a.LoginId,
                            name = a.Login_name,
                            email = a.Login_email,
                        }).ToList();
            GridView1.DataSource = grid.ToList();
            GridView1.DataBind();
        }
protected void btn_save_Click(object sender, EventArgs e)
        {
            if (btn_save.Text == "Save")
            {
                tb.Login_name = TextBox1.Text;
                tb.Login_email = TextBox2.Text;
                db.tbl_Login.Add(tb);
                db.SaveChanges();
                Grid();
                clear();
            }
            else
            {
                int idd = Convert.ToInt32(ViewState["id"]);
                tb = db.tbl_Login.Find(idd);
                tb.Login_name = TextBox1.Text;
                tb.Login_email = TextBox2.Text;
                db.SaveChanges();
                Grid();
                clear();
            }
        }
        protected void clear()
        {
            btn_Delete.Text = "Cancel";
            btn_save.Text = "Save";
            TextBox1.Text = "";
            TextBox2.Text = "";
        }
        protected void btn_edit_Click(object sender, EventArgs e)
        {
            Button btn = (Button)sender;
            GridViewRow gvr = (GridViewRow)btn.NamingContainer;
            Label llb = (Label)gvr.FindControl("lb");
            int idd = Convert.ToInt32(llb.Text);
            ViewState["id"] = idd;
            tb = db.tbl_Login.Find(idd);
            TextBox1.Text = tb.Login_name;
            TextBox2.Text = tb.Login_email;
            btn_save.Text = "Update";
            btn_Delete.Text = "Delete";
        }

        protected void btn_Delete_Click(object sender, EventArgs e)
        {
            if (btn_Delete.Text == "Cancel")
            {
                clear();
            }
            else
            {
                int idd = Convert.ToInt32(ViewState["id"]);
                tb = db.tbl_Login.Find(idd);
                db.tbl_Login.Remove(tb);
                db.SaveChanges();
                Grid();
                clear();
            } 
        }
    }
 }



No comments:

Post a Comment