How to Edit/Update Gridview Row..
In This Article I will show you , How Can we Edit/Update Gridview Row.Below I am showing GridView data
If We Want to Edit any Row .Press Edit then We will Get Update and Cancel button .Simply We can Update Row value.
GridWithEditEvent.aspx
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="GridWithEditEvent.aspx.cs" Inherits="GridWithEditEvent" %>
<!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>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="gridview" runat="server" AutoGenerateColumns="False"
onrowcancelingedit="onRowCancelingEdit" onrowediting="OnRowEdit"
onrowupdating="OnRowUpdate" GridLines="None" Width="67%" Style="text-align: left" BackColor="#99CCFF">
<Columns>
<asp:TemplateField HeaderText="Student Id">
<ItemTemplate>
<asp:Label ID ="id" runat="server" Text='<%#Eval("StudentId") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:Label ID ="lblname" runat="server" Text='<%#Eval("Name") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtname" runat="server" Text='<%#Eval("Name") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Student RollNo">
<ItemTemplate>
<asp:Label ID ="lblrollno" runat="server" Text='<%#Eval("RollNo") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtrollno" runat="server" Text='<%#Eval("RollNo") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Student Course">
<ItemTemplate>
<asp:Label ID ="lblcourse" runat="server" Text='<%#Eval("Course") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtCourse" runat="server" Text='<%#Eval("Course") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="lnkbtn" runat="server" CommandName="Edit">Edit</asp:LinkButton>
</ItemTemplate>
<EditItemTemplate>
<asp:LinkButton ID="lnkupdate" runat="server" CommandName="Update">Update</asp:LinkButton>
<asp:LinkButton ID="lnkcancel" runat="server" CommandName="Cancel">Cancel</asp:LinkButton>
</EditItemTemplate>
</asp:TemplateField>
</Columns>
<PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
<HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
<AlternatingRowStyle BackColor="White" />
</asp:GridView>
</div>
</form>
</body>
</html>
GridWithEditEvent.aspx.cs[CodeBehind Page]
using System;
using System.Data;
using System.Data.SqlClient;
using System.Web.UI.WebControls;
public partial class GridWithEditEvent : System.Web.UI.Page
{
SqlConnection con = new SqlConnection(@"Data Source=RAM-PC\SQLEXPRESS;Initial Catalog=CMC;integrated security=true");
SqlDataAdapter adap = null;
DataSet ds = null;
//int rowNo;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
GetStudentData();
}
}
private void GetStudentData()
{
adap = new SqlDataAdapter("select * from Student", con);
ds = new DataSet();
adap.Fill(ds, "Student");
gridview.DataSource = ds.Tables["Student"];
gridview.DataBind();
}
protected void OnRowEdit(object sender, GridViewEditEventArgs e)
{
gridview.EditIndex = e.NewEditIndex;
GetStudentData();
}
protected void OnRowUpdate(object sender, GridViewUpdateEventArgs e)
{
int studentid =Convert.ToInt32( ((Label)gridview.Rows[e.RowIndex].FindControl("id")).Text);
string studentName = ((TextBox)gridview.Rows[e.RowIndex].FindControl("txtname")).Text;
int studentRollNo = Convert.ToInt32(((TextBox)gridview.Rows[e.RowIndex].FindControl("txtrollno")).Text);
string studentCourse = ((TextBox)gridview.Rows[e.RowIndex].FindControl("txtCourse")).Text;
string query = "update Student set Name='"+studentName+"',RollNo='"+studentRollNo+"',Course='"+studentCourse+"' where StudentId="+studentid+"";
con = new SqlConnection(@"Data Source=RAM-PC\SQLEXPRESS;Initial Catalog=CMC;integrated security=true");
con.Open();
SqlCommand cmd = new SqlCommand(query, con);
SqlDataAdapter adap = new SqlDataAdapter(cmd);
int n = adap.SelectCommand.ExecuteNonQuery();
if (n > 0)
{
gridview.EditIndex = -1;
GetStudentData();
Response.Write("Data Updated successfully");
}
}
protected void onRowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
gridview.EditIndex = -1;
GetStudentData();
}
}
0 comments:
Post a Comment