How To Insert,Update,Delete using ModalPopupExtender


In this article, I will be explaining you, how to insert, Update, Delete data using Ajax ModalPopupExtender. I have seen many similar questions in dotnetspider forum so I thought of writing an article about it.

Here I am using Dridview to display data from database. Once user clicks on EDIT button the record will open in AJAX ModalPopupExtender to edit the data.

Client Side Code


< %@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" EnableEventValidation ="true" %>

< %@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix ="asp" %>

< !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

< html xmlns="http://www.w3.org/1999/xhtml">
< head runat="server">
< title> < /title>
< link href="StyleSheet.css" rel="stylesheet" type="text/css" />
< /head>
< body>
< form id="form1" runat="server">

< asp:ToolkitScriptManager ID="tool1" runat ="server" >
< /asp:ToolkitScriptManager>


< asp:Button ID="btnShowPopup" runat="server" style="display:none" />

< asp:ModalPopupExtender ID="Modlpop" runat ="server" TargetControlID ="btnShowPopup"
PopupControlID ="pnlShow" CancelControlID="btnClose" BackgroundCssClass="modalBackground">
< /asp:ModalPopupExtender>



< asp:Panel ID="pnlShow" runat ="server" style="display:block;">
< div style="border:Solid 3px #D55500;background-color:#D55500; text-align:center;">
< table>
< tr>
< td> Name< /td>
< td>
< asp:TextBox ID="TxtName" runat ="server" > < /asp:TextBox>
< /td>
< /tr>
< tr>
< td>
Empno< /td>
< td>
< asp:TextBox ID="TxtEmpno" runat ="server" > < /asp:TextBox>
< /td>
< /tr>
< tr>
< td>
Amount< /td>
< td>
< asp:TextBox ID="TxtAmount" runat ="server" > < /asp:TextBox>
< /td>
< /tr>
< tr>
< td>
< /td>
< td>
< asp:Button ID="Cmd_Save" runat="server" Text="Save" onclick="Cmd_Save_Click" />
< /td>
< td>
< asp:Button ID="btnClose" runat="server" Text="Close" CssClass ="myButton"/>
< /td>
< /tr>
< /table>
< /div>

< /asp:Panel>

< asp:GridView ID="grd1" runat ="server" AutoGenerateColumns ="false"
onrowcommand="grd1_RowCommand">
< Columns>
< asp:TemplateField HeaderText ="Name">
< ItemTemplate>
< asp:Label ID="lblName" runat ="server" Text ='< %# Eval("Ename") %> '> < /asp:Label>
< /ItemTemplate>
< /asp:TemplateField>

< asp:TemplateField HeaderText ="Eempno">
< ItemTemplate>
< asp:Label ID="lblEempno" runat ="server" Text ='< %# Eval("Eempno") %> '> < /asp:Label>
< /ItemTemplate>
< /asp:TemplateField>

< asp:TemplateField HeaderText ="Eamt">
< ItemTemplate>
< asp:Label ID="lblEamt" runat ="server" Text ='< %# Eval("Eamt") %> '> < /asp:Label>
< /ItemTemplate>
< /asp:TemplateField>

< asp:TemplateField HeaderText="Edit">
< ItemTemplate>
< asp:LinkButton CommandName="cmdBind" runat="server" Text='< %#Eval("Eempno")%> ' ID="hypeno" ToolTip='< %#Eval("Eempno")%> '> LinkButton
< /asp:LinkButton>


< /ItemTemplate>
< /asp:TemplateField>

< asp:TemplateField HeaderText="Delete">
< ItemTemplate>

< asp:LinkButton CommandName="cmdDelBind" OnClientClick ="return confirm('Are You Sure Deletion?');"
runat="server" Text='< %#Eval("Eempno")%> ' ID="LinkButton1" ToolTip='< %#Eval("Eempno")%> '> LinkButton
< /asp:LinkButton>

< /ItemTemplate>
< /asp:TemplateField>

< /Columns>
< /asp:GridView>


< /form>
< /body>
< /html>



server Side Code

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;

public partial class _Default : System.Web.UI.Page
{
private SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Conn"].ToString());
protected void Page_Load(object sender, EventArgs e)
{
BindList();
Modlpop.Show();
}

protected void Cmd_Save_Click(object sender, EventArgs e)
{
if (Cmd_Save.Text != "Update")
{
con.Open();
SqlCommand cmd =
new SqlCommand("Insert into Table_11 values ('" + TxtName.Text + "','" + TxtEmpno.Text + "','" + TxtAmount.Text + "')", con);
int result = cmd.ExecuteNonQuery();
con.Close();
}
else
{
con.Open();
SqlCommand cmd =
new SqlCommand("Update Table_11 set Ename='" + TxtName.Text + "',Eempno='" + TxtEmpno.Text + "',Eamt='" + TxtAmount.Text + "' where Eempno='" + Session["EditId"] + "'", con);
int result = cmd.ExecuteNonQuery();
con.Close();
}
BindList();
}
private void BindList()
{
con.Open();
SqlCommand cmd = new SqlCommand("Select * from Table_11", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
con.Close();
grd1.DataSource = ds;
grd1.DataBind();
}


protected void grd1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "cmdBind")
{
LinkButton lb = (LinkButton)e.CommandSource;
Session["EditId"] = lb.Text;
DataTable dt = new DataTable();
SqlDataAdapter sqlda = new SqlDataAdapter("SELECT * FROM Table_11 WHERE Eempno ='" + lb.Text + "'", con);
sqlda.Fill(dt);
TxtName.Text = dt.DefaultView[0][1].ToString();
TxtEmpno.Text = dt.DefaultView[0][2].ToString();
TxtAmount.Text = dt.DefaultView[0][3].ToString();
Cmd_Save.Text = "Update";
BindList();
}

if (e.CommandName == "cmdDelBind")
{
LinkButton lb = (LinkButton)e.CommandSource;
Session["DelitId"] = lb.Text;
con.Open();
SqlCommand cmd =
new SqlCommand("Delete From Table_11 where Eempno='" + Session["DelitId"] + "'", con);
int result = cmd.ExecuteNonQuery();
con.Close();
TxtName.Text = "";
TxtEmpno.Text = "";
TxtAmount.Text = "";
BindList();
}
}
}


Comments

Guest Author: jagan06 Aug 2012

It's Really so good....
Bt in this when i press edit link button it is not editing it's means not updating no action is coming...

Guest Author: phisyk27 Aug 2012

And where did you explain something?!?



  • Do not include your name, "with regards" etc in the comment. Write detailed comment, relevant to the topic.
  • No HTML formatting and links to other web sites are allowed.
  • This is a strictly moderated site. Absolutely no spam allowed.
  • Name:
    Email: