Step 1:
Create a table items with the fallowing columns
create table items
(
iterm_no int,
name varChar(50),
price decimal
)
Step 2:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="srinivasgridview.aspx.cs" Inherits="gridview.srinivasgridview" %>
<!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="Gridview1" runat ="server" AutoGenerateColumns ="false"
OnRowCancelingEdit ="GridView1_RowCancelingEdit" DataKeyNames ="iterm_no"
OnRowEditing ="GridView1_RowEditing" OnRowUpdating ="GridView1_RowUpdating"
>
<HeaderStyle BackColor ="Gray" ForeColor="White" HorizontalAlign ="Left" Height="20" />
<Columns >
<asp:CommandField ShowEditButton ="true" ShowCancelButton="true" ButtonType="Button" />
<asp:BoundField DataField ="iterm_no" HeaderText="ITEM_NO" ReadOnly ="true" />
<asp:TemplateField HeaderText="Product Name" >
<ItemTemplate >
<%# Eval ("name") %>
</ItemTemplate>
<EditItemTemplate >
<asp:TextBox runat ="server" ID="textname" Text ='<%#Eval("name") %>'>
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Price" >
<ItemTemplate >
<%#Eval ("price") %>
</ItemTemplate>
<EditItemTemplate >
<asp:TextBox runat ="server" ID ="pricetext" Text='<%#Eval("price") %>'>
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</form>
</body>
</html>
Create a table items with the fallowing columns
create table items
(
iterm_no int,
name varChar(50),
price decimal
)
Step 2:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="srinivasgridview.aspx.cs" Inherits="gridview.srinivasgridview" %>
<!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="Gridview1" runat ="server" AutoGenerateColumns ="false"
OnRowCancelingEdit ="GridView1_RowCancelingEdit" DataKeyNames ="iterm_no"
OnRowEditing ="GridView1_RowEditing" OnRowUpdating ="GridView1_RowUpdating"
>
<HeaderStyle BackColor ="Gray" ForeColor="White" HorizontalAlign ="Left" Height="20" />
<Columns >
<asp:CommandField ShowEditButton ="true" ShowCancelButton="true" ButtonType="Button" />
<asp:BoundField DataField ="iterm_no" HeaderText="ITEM_NO" ReadOnly ="true" />
<asp:TemplateField HeaderText="Product Name" >
<ItemTemplate >
<%# Eval ("name") %>
</ItemTemplate>
<EditItemTemplate >
<asp:TextBox runat ="server" ID="textname" Text ='<%#Eval("name") %>'>
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Price" >
<ItemTemplate >
<%#Eval ("price") %>
</ItemTemplate>
<EditItemTemplate >
<asp:TextBox runat ="server" ID ="pricetext" Text='<%#Eval("price") %>'>
</asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</div>
</form>
</body>
</html>
Step 3: Set connection string in web.config File:
<connectionStrings >
<add name ="mycon" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\gridviewdatabase.mdf;Integrated Security=True;User Instance=True"/>
</connectionStrings>
Step 4:
Code behind code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
namespace gridview
{
public partial class srinivasgridview : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
bind();
}
}
public void bind()
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings ["mycon"].ConnectionString );
con.Open();
SqlDataAdapter da = new SqlDataAdapter("select * from items", con);
DataTable dt = new DataTable();
da.Fill(dt);
Gridview1.DataSource = dt;
Gridview1.DataBind();
con.Close();
}
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
Gridview1.EditIndex = e.NewEditIndex;
bind();
}
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
e.Cancel = true;
Gridview1.EditIndex = -1;
bind();
}
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
GridViewRow row = Gridview1.Rows[e.RowIndex];
TextBox textname = (TextBox)row.FindControl("textname");
TextBox pricetext = (TextBox )row.FindControl("pricetext");
int item_no = Int32.Parse(Gridview1.DataKeys[e.RowIndex].Value.ToString());
string name = textname.Text.ToString();
decimal Price = decimal.Parse(pricetext.Text);
updateitems(item_no,name, Price );
}
public void updateitems(int item_no, string name, decimal Price)
{
try
{
string query = "UPDATE items SET name = @name, price = @price WHERE iterm_no = @iterm_no";
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["mycon"].ConnectionString);
con.Open();
SqlCommand com = new SqlCommand(query, con);
com.Parameters.Add("@iterm_no", SqlDbType.Int ).Value = item_no ;
com.Parameters.Add("@name", SqlDbType.VarChar ).Value = name;
com.Parameters.Add("@price", SqlDbType.Decimal ).Value = Price;
com.ExecuteNonQuery();
Gridview1.EditIndex = -1;
bind ();
}
catch (Exception ex)
{
Response.Write("<script> alert('Error accrued')</script>");
}
}
}
}
No comments:
Post a Comment