GridView Process in asp.net
20/02/2012 10:06
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="VendorDetails.aspx.cs" Inherits="SMS.VendorDetails" %>
<%@register Src="~/Header.ascx" TagName="header" TagPrefix="uc1" %>
<%@register Src="~/Footer.ascx" TagName="footer" TagPrefix="uc2" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="https://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Vendor Details</title>
<link href="StyleSheet/SMSStyle.css" rel="stylesheet" type="text/css" />
</head>
<body style="margin-left:0px;margin-top:0px;margin-right:0px">
<form id="form1" runat="server">
<table style="width:100%" cellpadding="0" cellspacing="0">
<tr style="height:100px">
<td valign="top">
<uc1:header ID="header1" runat="server" />
</td>
</tr>
<tr style="height:500px">
<td>
<table>
<tr>
<td class="label">
Vendor Name
</td>
<td>
<asp:TextBox ID="txtVendorName" runat="server" CssClass="textbox"></asp:TextBox>
</td>
<td class="label">
Vendor Type
</td>
<td>
<asp:TextBox ID="txtVendorType" runat="server" CssClass="textbox"></asp:TextBox>
</td>
</tr>
<tr>
<td class="label">
Category
</td>
<td>
<asp:TextBox ID="txtCategory" runat="server" CssClass="textbox"></asp:TextBox>
</td>
<td class="label">
Address
</td>
<td>
<asp:TextBox ID="txtAddress" runat="server" CssClass="textbox"
TextMode="MultiLine"></asp:TextBox>
</td>
</tr>
<tr>
<td class="label">
City
</td>
<td>
<asp:TextBox ID="txtCity" runat="server" CssClass="textbox"></asp:TextBox>
</td>
<td class="label">Country</td>
<td>
<asp:TextBox ID="txtCountry" runat="server" CssClass="textbox"></asp:TextBox>
</td>
</tr>
<tr>
<td class="label">Phone</td>
<td>
<asp:TextBox ID="txtPhone" runat="server" CssClass="textbox"></asp:TextBox>
</td>
<td class="label">Mobile</td>
<td>
<asp:TextBox ID="txtMobile" runat="server" CssClass="textbox"></asp:TextBox>
</td>
</tr>
<tr>
<td class="label">EMail ID</td>
<td>
<asp:TextBox ID="txtEMailID" runat="server" CssClass="textbox"></asp:TextBox>
</td>
<td class="label">Remarks</td>
<td>
<asp:TextBox ID="txtRemarks" runat="server" CssClass="textbox"
TextMode="MultiLine"></asp:TextBox>
</td>
</tr>
<tr>
<td colspan="4" align="center">
<asp:Button ID="btnsave" runat="server" Text="Save" CssClass="button" ForeColor="White"
onclick="btnsave_Click" />
<asp:Button ID="btnCancel" runat="server" CssClass="button" ForeColor="White" Text="Cancel"
onclick="btnCancel_Click"/>
</td>
</tr>
</table>
<asp:Panel ID="pnlVendorDetails" runat="server" Height="500px" Width="900px" ScrollBars="Auto">
<asp:GridView ID="GVVendorDetails" runat="server" AllowPaging="True"
AutoGenerateColumns="False" CssClass="mGrid"
onpageindexchanging="GVVendorDetails_PageIndexChanging"
onrowcancelingedit="GVVendorDetails_RowCancelingEdit"
onrowcommand="GVVendorDetails_RowCommand"
onrowdatabound="GVVendorDetails_RowDataBound"
onrowdeleting="GVVendorDetails_RowDeleting"
onrowediting="GVVendorDetails_RowEditing"
onrowupdating="GVVendorDetails_RowUpdating"
onselectedindexchanged="GVVendorDetails_SelectedIndexChanged" PageSize="5"
ShowFooter="True" >
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:CheckBox ID="chkHeader" runat="server" AutoPostBack="True"
oncheckedchanged="chkHeader_CheckedChanged" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkItem" runat="server" />
</ItemTemplate>
<FooterTemplate>
<asp:ImageButton ID="imgbtnDel" runat="server" CommandName="Delete"
ImageUrl="~/Images/Delete.JPG" />
</FooterTemplate>
</asp:TemplateField>
<asp:CommandField HeaderText="Edit" ShowEditButton="True" />
<asp:TemplateField HeaderText="Sl.No">
<ItemTemplate>
<asp:Label ID="lblSno" runat="server"></asp:Label>
</ItemTemplate>
<FooterTemplate>
<asp:LinkButton ID="lnkbtnADD" runat="server" CommandName="Add" Text="ADD"></asp:LinkButton>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Vendor ID">
<ItemTemplate>
<asp:Label ID="lblVendorID" runat="server" Text='<%# Eval("VendorID") %>' ></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:Label ID="lblE_VendorID" runat="server" Text='<%# Eval("VendorID") %>'></asp:Label>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Vendor Name">
<ItemTemplate>
<asp:Label ID="lblVendorName" runat="server" Text='<%# Eval("VendorName") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtE_VendorName" runat="server"
Text='<%# bind("VendorName") %>'></asp:TextBox>
</EditItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtF_VendorName" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="VendorType">
<ItemTemplate>
<asp:Label ID="lblVendorType" runat="server" Text='<%# bind("VendorType") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtE_VendorType" runat="server"
Text='<%# bind("VendorType") %>'></asp:TextBox>
</EditItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtF_VendorType" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Category">
<ItemTemplate>
<asp:Label ID="lblCategory" runat="server" Text='<%# bind("Category") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtE_Category" runat="server" Text='<%# bind("Category") %>'></asp:TextBox>
</EditItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtF_Category" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Address">
<ItemTemplate>
<asp:Label ID="lblAddress" runat="server" Text='<%# bind("Address") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtE_Address" runat="server" Text='<%# bind("Address") %>'></asp:TextBox>
</EditItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtF_Address" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="City">
<ItemTemplate>
<asp:Label ID="lblCity" runat="server" Text='<%# bind("City") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtE_City" runat="server" Text='<%# bind("City") %>'></asp:TextBox>
</EditItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtF_City" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Country">
<ItemTemplate>
<asp:Label ID="lblCountry" runat="server" Text='<%# bind("Country") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtE_Country" runat="server" Text='<%# bind("Country") %>'></asp:TextBox>
</EditItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtF_Country" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Phone">
<ItemTemplate>
<asp:Label ID="lblPhone" runat="server" Text='<%# bind("Phone") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtE_Phone" runat="server" Text='<%# bind("Phone") %>'></asp:TextBox>
</EditItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtF_Phone" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Mobile">
<ItemTemplate>
<asp:Label ID="lblMobile" runat="server" Text='<%# bind("Mobile") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtE_Mobile" runat="server" Text='<%# bind("Mobile") %>'></asp:TextBox>
</EditItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtF_Mobile" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Email ID">
<ItemTemplate>
<asp:Label ID="lblEmailID" runat="server" Text='<%# bind("EmailID") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtE_EmailID" runat="server" Text='<%# bind("EmailID") %>'></asp:TextBox>
</EditItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtF_EmailID" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Remarks">
<ItemTemplate>
<asp:Label ID="lblRemarks" runat="server" Text='<%# bind("Remarks") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtE_Remarks" runat="server" Text='<%# bind("Remarks") %>'></asp:TextBox>
</EditItemTemplate>
<FooterTemplate>
<asp:TextBox ID="txtF_Remarks" runat="server"></asp:TextBox>
</FooterTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
<hr id="hr1" width="100%" align="left" runat="server" />
<table id="Table1" width="100%" class="table" runat="server">
<tr>
<td align="right">
<strong>
<br />
Disply :</strong>
<br />
</td>
<td>
<asp:DropDownList ID="ddlRecSize" runat="server" CssClass="dropdownsmall" AutoPostBack="True"
onselectedindexchanged="ddlRecSize_SelectedIndexChanged">
<asp:ListItem>5</asp:ListItem>
<asp:ListItem>10</asp:ListItem>
<asp:ListItem>20</asp:ListItem>
<asp:ListItem>50</asp:ListItem>
<asp:ListItem>100</asp:ListItem>
</asp:DropDownList>
<strong>Records.<br /></strong>
</td>
<td align="right">
<strong>Goto Page :</strong>
</td>
<td>
<asp:TextBox ID="txtGoPage" runat="server" CssClass="textboxsmall"></asp:TextBox>
<asp:Button ID="btnGO" runat="server" Text="GO" Height="20px" Width="30px"
onclick="btnGO_Click" />
</td>
<td align="right">
<strong>Records :</strong>
</td>
<td>
<asp:Label ID="lblRecordCount" runat="server" ></asp:Label>
</td>
</tr>
<tr>
<td align="right">
<strong>Records :</strong>
</td>
<td>
<asp:Label ID="lblRecords" runat="server"></asp:Label>
<strong>Of</strong>
<asp:Label ID="lblTotRecords" runat="server" ></asp:Label>
</td>
<td align="right">
<strong>Current Page : </strong>
</td>
<td>
<asp:Label ID="lblCrntPage" runat="server"> </asp:Label>
</td>
<td align="right">
<strong>Total Pages :</strong>
</td>
<td>
<asp:Label ID="lblTotPages" runat="server"></asp:Label>
</td>
</tr>
</table>
<hr id="hr2" width="100%" align="left" runat="server" />
</asp:Panel>
</td>
</tr>
<tr style="height:50px">
<td align="center" style="border-top-style: solid; border-width: thin; border-bottom-style: solid; border-color: #008080" >
<uc2:Footer ID="Footer1" runat="server" />
</td>
</tr>
</table>
</form>
</body>
</html>
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using BusinessLogic;
using System.Data.SqlClient;
namespace SMS
{
public partial class VendorDetails : System.Web.UI.Page
{
BLVendorDetails _BLVendorDetails = new BLVendorDetails();
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack != true)
{
Session["PageDetails"] = "Master >> VendorDetails";
Fill_GridView();
}
TblRecDetail();
}
protected void btnsave_Click(object sender, EventArgs e)
{
_BLVendorDetails.Insert_BLVendorDetails(txtVendorName.Text, txtVendorType.Text, txtCategory.Text, txtAddress.Text, txtCity.Text, txtCountry.Text, txtPhone.Text, txtMobile.Text, txtEMailID.Text, txtRemarks.Text);
Fill_GridView();
TblRecDetail();
Clear();
}
public void Fill_GridView()
{
_BLVendorDetails.Fill_GridView("Get_VendorDetails", GVVendorDetails);
lblRecordCount.Text = GVVendorDetails.Rows.Count.ToString();
lblTotPages.Text = GVVendorDetails.PageCount.ToString();
lblCrntPage.Text = Convert.ToString(GVVendorDetails.PageIndex + 1);
int FromRec = ((GVVendorDetails.PageIndex) * (GVVendorDetails.PageSize)) + 1;
int ToRec = (FromRec + GVVendorDetails.PageSize) - 1;
lblRecords.Text = FromRec.ToString() + " - " + ToRec.ToString();
lblTotRecords.Text = GVVendorDetails.Rows.Count.ToString();
}
protected void btnCancel_Click(object sender, EventArgs e)
{
Clear();
}
public void Clear()
{
txtAddress.Text = string.Empty;
txtCategory.Text = string.Empty;
txtCity.Text = string.Empty;
txtCountry.Text = string.Empty;
txtEMailID.Text = string.Empty;
txtMobile.Text = string.Empty;
txtPhone.Text = string.Empty;
txtVendorName.Text = string.Empty;
txtRemarks.Text = string.Empty;
txtVendorType.Text = string.Empty;
}
protected void GVVendorDetails_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GVVendorDetails.PageIndex = e.NewPageIndex;
Fill_GridView();
}
protected void ddlRecSize_SelectedIndexChanged(object sender, EventArgs e)
{
GVVendorDetails.PageSize = Convert.ToInt32(ddlRecSize.SelectedValue);
Fill_GridView();
}
protected void btnGO_Click(object sender, EventArgs e)
{
GVVendorDetails.PageIndex = Convert.ToInt32(txtGoPage.Text) - 1;
Fill_GridView();
}
public void TblRecDetail()
{
int RwCount = GVVendorDetails.Rows.Count;
if (RwCount == 0)
{
Table1.Visible = false;
hr2.Visible = false;
}
}
protected void chkHeader_CheckedChanged(object sender, EventArgs e)
{
CheckBox chkHeader1 = GVVendorDetails.HeaderRow.FindControl("chkHeader") as CheckBox;
if (chkHeader1.Checked)
{
foreach (GridViewRow gvrow in GVVendorDetails.Rows)
{
CheckBox chkItem1 = (CheckBox)gvrow.FindControl("chkItem") as CheckBox;
chkItem1.Checked = true;
}
}
else
{
foreach (GridViewRow gvrow in GVVendorDetails.Rows)
{
CheckBox chkItem2 = (CheckBox)gvrow.FindControl("chkItem") as CheckBox;
chkItem2.Checked = false;
}
}
}
protected void GVVendorDetails_RowEditing(object sender, GridViewEditEventArgs e)
{
GVVendorDetails.EditIndex = e.NewEditIndex;
Fill_GridView();
GVVendorDetails.Columns[1].Visible = false;
//GVVendorDetails.FooterRow.Visible = false;
}
protected void GVVendorDetails_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
GVVendorDetails.EditIndex = -1;
Fill_GridView();
GVVendorDetails.FooterRow.Visible = true;
GVVendorDetails.Columns[1].Visible = true;
}
protected void GVVendorDetails_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
Label lblE_VendorID1 = (Label)GVVendorDetails.Rows[e.RowIndex].FindControl("lblE_VendorID") as Label;
TextBox txtE_VendorName1 = (TextBox)GVVendorDetails.Rows[e.RowIndex].FindControl("txtE_VendorName") as TextBox;
TextBox txtE_VendorType1 = (TextBox)GVVendorDetails.Rows[e.RowIndex].FindControl("txtE_VendorType") as TextBox;
TextBox txtE_Category1 = (TextBox)GVVendorDetails.Rows[e.RowIndex].FindControl("txtE_Category") as TextBox;
TextBox txtE_Address1 = (TextBox)GVVendorDetails.Rows[e.RowIndex].FindControl("txtE_Address") as TextBox;
TextBox txtE_City1 = (TextBox)GVVendorDetails.Rows[e.RowIndex].FindControl("txtE_City") as TextBox;
TextBox txtE_Country1 = (TextBox)GVVendorDetails.Rows[e.RowIndex].FindControl("txtE_Country") as TextBox;
TextBox txtE_Phone1 = (TextBox)GVVendorDetails.Rows[e.RowIndex].FindControl("txtE_Phone") as TextBox;
TextBox txtE_Mobile1 = (TextBox)GVVendorDetails.Rows[e.RowIndex].FindControl("txtE_Mobile") as TextBox;
TextBox txtE_EMailID1 = (TextBox)GVVendorDetails.Rows[e.RowIndex].FindControl("txtE_EmailID") as TextBox;
TextBox txtE_Remarks1 = (TextBox)GVVendorDetails.Rows[e.RowIndex].FindControl("txtE_Remarks") as TextBox;
_BLVendorDetails.Update_Vendor(lblE_VendorID1.Text, txtE_VendorName1.Text, txtE_VendorType1.Text, txtE_Category1.Text, txtE_Address1.Text, txtE_City1.Text, txtE_Country1.Text, txtE_Phone1.Text, txtE_Mobile1.Text, txtE_EMailID1.Text, txtE_Remarks1.Text);
GVVendorDetails.EditIndex = -1;
Fill_GridView();
GVVendorDetails.FooterRow.Visible = true;
GVVendorDetails.Columns[1].Visible = true;
}
protected void GVVendorDetails_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
Label lblso = (Label)e.Row.FindControl("lblSno") as Label;
lblso.Text = Convert.ToString((e.Row.RowIndex + 1) + GVVendorDetails.PageSize * GVVendorDetails.PageIndex);
}
}
protected void GVVendorDetails_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Add")
{
TextBox txtF_VendorName = GVVendorDetails.FooterRow.FindControl("txtF_VendorName") as TextBox;
TextBox txtF_VendorType = GVVendorDetails.FooterRow.FindControl("txtF_VendorType") as TextBox;
TextBox txtF_Category = GVVendorDetails.FooterRow.FindControl("txtF_Category") as TextBox;
TextBox txtF_Address = GVVendorDetails.FooterRow.FindControl("txtF_Address") as TextBox;
TextBox txtF_City = GVVendorDetails.FooterRow.FindControl("txtF_City") as TextBox;
TextBox txtF_Country = GVVendorDetails.FooterRow.FindControl("txtF_Country") as TextBox;
TextBox txtF_Phone = GVVendorDetails.FooterRow.FindControl("txtF_Phone") as TextBox;
TextBox txtF_Mobile = GVVendorDetails.FooterRow.FindControl("txtF_Mobile") as TextBox;
TextBox txtF_EmailID = GVVendorDetails.FooterRow.FindControl("txtF_EmailID") as TextBox;
TextBox txtF_Remarks = GVVendorDetails.FooterRow.FindControl("txtF_Remarks") as TextBox;
_BLVendorDetails.Insert_BLVendorDetails(txtF_VendorName.Text, txtF_VendorType.Text, txtF_Category.Text, txtF_Address.Text, txtF_City.Text, txtF_Country.Text, txtF_Phone.Text, txtF_Mobile.Text, txtF_EmailID.Text, txtF_Remarks.Text);
Fill_GridView();
}
else if (e.CommandName == "Delete")
{
for (int i = 0; i < GVVendorDetails.Rows.Count; i++)
{
CheckBox ChkItem = (CheckBox)GVVendorDetails.Rows[i].Cells[0].Controls[1];
if (ChkItem.Checked == true)
{
Label lblVendorID = (Label)GVVendorDetails.Rows[i].Cells[3].Controls[1];
string VendorID = lblVendorID.Text;
_BLVendorDetails.Delete_Vendor(VendorID);
}
}
Fill_GridView();
TblRecDetail();
}
}
protected void GVVendorDetails_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
}
protected void GVVendorDetails_SelectedIndexChanged(object sender, EventArgs e)
{
}
}
}