Showing posts with label Grid. Show all posts
Showing posts with label Grid. Show all posts

Sunday, August 3, 2014

Grid


EmpName     varchar(100),
Age   Int,
Salary      Int,
City varchar(100),
Address     varchar(500))

CREATEPROCEDURE BindEmpGrid_Sp

AS
BEGIN
SELECT*FROM Emp_Tb

END

alterPROCEDURE SearchEmpRecords1_Sp
                @SearchBy        varchar(50),
                @SearchVal       varchar(50)
AS
BEGIN
IF @SearchBy ='Emp Name'
BEGIN
SELECT*FROM Emp_Tb WHERE EmpName like @SearchVal +'%'
END
ELSEIF @SearchBy ='City'
BEGIN
SELECT*FROM Emp_Tb WHERE City like @SearchVal +'%'
END
ELSEIF @SearchBy ='Salary'
BEGIN
SELECT*FROM Emp_Tb WHERE Salary = @SearchVal
END
ELSE
BEGIN
SELECT*FROM Emp_Tb
END
END

----------------------------------------------------------------------------------------------------------

CREATEPROCEDURE SearchEmpRecords1_Sp
                @SearchBy        varchar(50),
                @SearchVal       varchar(50)
AS
BEGIN

DECLARE @sql NVARCHAR(1000)
SELECT @sql=CASE @SearchBy
WHEN'Emp Name'THEN
'SELECT * FROM Emp_Tb WHERE EmpName LIKE '''+ @SearchVal +'%'''
WHEN'City'THEN
'SELECT * FROM Emp_Tb WHERE City LIKE '''+ @SearchVal +'%'''
WHEN'Salary'THEN
'SELECT * FROM Emp_Tb WHERE Salary = '+ @SearchVal +''
ELSE
'(SELECT * FROM Emp_Tb)'
END
END

EXECUTEsp_executesql@sql
<%@PageLanguage="C#"AutoEventWireup="true"CodeFile="Grid.aspx.cs"Inherits="Grid"%>

<!DOCTYPEhtmlPUBLIC"-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<htmlxmlns="http://www.w3.org/1999/xhtml">
<headrunat="server">
<title></title>
</head>
<body>
<formid="form1"runat="server">
<div>
<fieldsetstyle="width: 415px;">
<legend>Bind and Search records example in gridview</legend>
<table>
<tr>
<td>
                        Search By:
<asp:DropDownListID="ddlSearchBy"runat="server"AutoPostBack="True"OnSelectedIndexChanged="ddlSearchBy_SelectedIndexChanged">
<asp:ListItemText="All"></asp:ListItem>
<asp:ListItemText="Emp Name"></asp:ListItem>
<asp:ListItemText="Salary"></asp:ListItem>
<asp:ListItemText="City"></asp:ListItem>
</asp:DropDownList>
</td>
<td>
<asp:TextBoxID="txtSearch"runat="server"></asp:TextBox>
</td>
<td>
<asp:ButtonID="btnSearch"runat="server"Text="Search"OnClick="btnSearch_Click"/>
</td>
</tr>
</table>
<asp:GridViewID="grdEmp"runat="server"AllowSorting="True"EmptyDataText="No records found"
CssClass="rowHover"RowStyle-CssClass="rowHover"ShowHeader="true"AutoGenerateColumns="False"
AllowPaging="True"OnPageIndexChanging="grdEmp_PageIndexChanging"PageSize="5"
CellPadding="4"ForeColor="#333333"GridLines="None"Width="100%">
<AlternatingRowStyleBackColor="White"ForeColor="#284775"/>
<Columns>
<asp:BoundFieldHeaderText="Emp Name"DataField="EmpName"ItemStyle-HorizontalAlign="Center"/>
<asp:BoundFieldHeaderText="Age"DataField="Age"ItemStyle-HorizontalAlign="Center"/>
<asp:BoundFieldHeaderText="Salary"DataField="Salary"ItemStyle-HorizontalAlign="Center"/>
<asp:BoundFieldHeaderText="City"DataField="City"ItemStyle-HorizontalAlign="Center"/>
<asp:BoundFieldHeaderText="Address"DataField="Address"ItemStyle-HorizontalAlign="Center"/>
</Columns>
<EditRowStyleBackColor="#999999"/>
<FooterStyleBackColor="#ffffff"Font-Bold="True"ForeColor="White"/>
<HeaderStyleBackColor="#5D7B9D"Font-Bold="True"ForeColor="White"/>
<PagerStyleBackColor="#284775"ForeColor="White"HorizontalAlign="Center"/>
<RowStyleCssClass="rowHover"BackColor="#F7F6F3"ForeColor="#333333"></RowStyle>
<SelectedRowStyleBackColor="#E2DED6"Font-Bold="True"ForeColor="#333333"/>
<%-- <sortedascendingcellstylebackcolor="#E9E7E2" />
<sortedascendingheaderstylebackcolor="#506C8C" />
<sorteddescendingcellstylebackcolor="#FFFDF8" />
<sorteddescendingheaderstylebackcolor="#6F8DAE" />--%>
<EmptyDataRowStyleWidth="550px"ForeColor="Red"Font-Bold="true"HorizontalAlign="Center"/>
</asp:GridView>
</fieldset>
</div>
</form>
</body>
</html>

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


publicpartialclassGrid : System.Web.UI.Page
{
SqlConnection con = newSqlConnection(ConfigurationManager.ConnectionStrings["con"].ConnectionString);
protectedvoidPage_Load(object sender, EventArgs e)
    {
if (con.State == ConnectionState.Closed)
        {
con.Open();
        }

if (!Page.IsPostBack)
        {
BindEmpGrid();
txtSearch.Enabled = false;
        }
    }

privatevoidBindEmpGrid()
    {
SqlDataAdapteradp = newSqlDataAdapter();
DataTabledt = newDataTable();
try
        {
adp = newSqlDataAdapter("BindEmpGrid_Sp", con);
adp.Fill(dt);
if (dt.Rows.Count> 0)
            {
grdEmp.DataSource = dt;
grdEmp.DataBind();
            }
else
            {
grdEmp.DataSource = null;
grdEmp.DataBind();
            }
        }
catch (Exception ex)
        {
ScriptManager.RegisterStartupScript(this, this.GetType(), "Message", "alert('Error occured : " + ex.Message.ToString() + "');", true);
        }
finally
        {
dt.Clear();
dt.Dispose();
adp.Dispose();
con.Close();
        }
    }

protectedvoidddlSearchBy_SelectedIndexChanged(object sender, EventArgs e)
    {
if (ddlSearchBy.SelectedItem.Text == "All")
        {
txtSearch.Text = string.Empty;
txtSearch.Enabled = false;
        }
else
        {
txtSearch.Enabled = true;
txtSearch.Text = string.Empty;
txtSearch.Focus();
        }
    }

protectedvoidbtnSearch_Click(object sender, EventArgs e)
    {
DataTabledt = newDataTable();
SqlCommandcmd = newSqlCommand();
SqlDataAdapteradp = newSqlDataAdapter();
try
        {
if (ddlSearchBy.SelectedItem.Text == "Emp Name")
            {
getEmpRecords(ddlSearchBy.SelectedItem.Text, txtSearch.Text.Trim());
            }
elseif (ddlSearchBy.SelectedItem.Text == "City")
            {
getEmpRecords(ddlSearchBy.SelectedItem.Text, txtSearch.Text.Trim());
            }
elseif (ddlSearchBy.SelectedItem.Text == "Salary")
            {
getEmpRecords(ddlSearchBy.SelectedItem.Text, txtSearch.Text.Trim());
            }
else
            {
getEmpRecords(ddlSearchBy.SelectedItem.Text, txtSearch.Text.Trim());
            }
        }
catch (Exception ex)
        {
ScriptManager.RegisterStartupScript(this, this.GetType(), "Message", "alert('Error occured : " + ex.Message.ToString() + "');", true);
        }
finally
        {
dt.Clear();
dt.Dispose();
cmd.Dispose();
con.Close();
        }
    }

privatevoidgetEmpRecords(stringsearchBy, stringsearchVal)
    {
DataTabledt = newDataTable();
SqlCommandcmd = newSqlCommand();
SqlDataAdapteradp = newSqlDataAdapter();
try
        {
cmd = newSqlCommand("SearchEmpRecords1_Sp", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@SearchBy", searchBy);
cmd.Parameters.AddWithValue("@SearchVal", searchVal);
adp.SelectCommand = cmd;
adp.Fill(dt);
if (dt.Rows.Count> 0)
            {
grdEmp.DataSource = dt;
grdEmp.DataBind();
            }
else
            {
grdEmp.DataSource = dt;
grdEmp.DataBind();
            }
        }
catch (Exception ex)
        {
ScriptManager.RegisterStartupScript(this, this.GetType(), "Message", "alert('Error occured : " + ex.Message.ToString() + "');", true);
        }
finally
        {
dt.Clear();
dt.Dispose();
cmd.Dispose();
con.Close();
        }
    }

protectedvoidgrdEmp_PageIndexChanging(object sender, GridViewPageEventArgs e)
    {
grdEmp.PageIndex = e.NewPageIndex;
BindEmpGrid();
    }
}