In this post I am going to explain only RawDataBound event. If you want learn more GridView evnets then please see my previous post.
First I will create a database table in SQL and one Stored Procedure to fetch data.
Creating table:-
In the above article I try to explain the RowdataBound Events of GridView in asp.net c# with example. I hope its useful to you. Please post your feedback, question, or comments about this article.
First I will create a database table in SQL and one Stored Procedure to fetch data.
Creating table:-
CREATE TABLE [dbo].[tblEmpMaster](
[EmpID] [int] NOT NULL,
[EmpName] [varchar](100) NOT NULL,
[EmpSalary] [int] NULL,
[Age] [int] NULL
)
Let me Insert some records into above table:-
INSERT [dbo].[tblEmpMaster] ([EmpID], [EmpName], [EmpSalary], [Age])
VALUES (1, N'Ram', 50000, 28)
GO
INSERT [dbo].[tblEmpMaster] ([EmpID], [EmpName], [EmpSalary], [Age])
VALUES (2, N'Naveen', 22000, 25)
GO
INSERT [dbo].[tblEmpMaster] ([EmpID], [EmpName], [EmpSalary], [Age])
VALUES (3, N'Neetu Singh', 17000, 27)
GO
INSERT [dbo].[tblEmpMaster] ([EmpID], [EmpName], [EmpSalary], [Age])
VALUES (5, N'R. P Singh', 62000, 23)
GO
INSERT [dbo].[tblEmpMaster] ([EmpID], [EmpName], [EmpSalary], [Age])
VALUES (6, N'Mohit', 27000, 24)
GO
Now I will Create a Stored Procedure to fetch data from above table :-
CREATE Procedure [dbo].[getEmployee]
as
begin
SELECT [EmpID],[EmpName],[EmpSalary],[Age] FROM [Employee].[dbo].[tblEmpMaster]
end
Database part is over. Now let me come to GridView part:-
Aspx file
<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
<h2><%: Title %>.</h2>
<h3>Demp Application</h3>
<p>Grid View:- Insert, Edit, Delete Events</p>
<div>
<asp:GridView ID="EmpGridView" Width="700px" runat="server" AutoGenerateColumns="False"
DataKeyNames="EmpId" OnRowDataBound="EmpGridView_RowDataBound" >
<Columns>
<asp:BoundField DataField="EmpId" HeaderText="Id"/>
<asp:BoundField DataField="EmpName" HeaderText="Name"/>
<asp:BoundField DataField="EmpSalary" HeaderText="Slary"/>
<asp:BoundField DataField="Age" HeaderText="Age"/>
</Columns>
</asp:GridView>
</div>
</asp:Content>
Design:-
CS file
Connection String and Sql Conncetion Instances
static String conStr = WebConfigurationManager.ConnectionStrings["TestWebCon"].ConnectionString.ToString();
static SqlConnection con = new SqlConnection(conStr);
PageLoad Method:-
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
bingGrid();
}
}
GridView bind method:-
public void bingGrid()
{
SqlCommand cmd = new SqlCommand("[dbo].[getEmployee]", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
if(ds.Tables[0].Rows.Count>0)
{
EmpGridView.DataSource =
ds.Tables[0];
EmpGridView.DataBind();
}
else
{
ds.Tables[0].Rows.Add(ds.Tables[0].NewRow());
EmpGridView.DataSource =
ds.Tables[0];
EmpGridView.DataBind();
int columncount = EmpGridView.Rows[0].Cells.Count;
EmpGridView.Rows[0].Cells.Clear();
EmpGridView.Rows[0].Cells.Add(new TableCell());
EmpGridView.Rows[0].Cells[0].ColumnSpan = columncount;
EmpGridView.Rows[0].Cells[0].Text
= "No Records Found";
con.Close();
}
}
RowDataBound
Event:-
In the below event I am checking employee salary if it is less then
30000 k then I changed the row color as brown.
protected void EmpGridView_RowDataBound(object sender, GridViewRowEventArgs e)
{
//Checking
the RowType of the Row
if (e.Row.RowType == DataControlRowType.DataRow)
{
//If
Salary is less than 10000 than set the row Background Color to Cyan
if (Convert.ToInt64(e.Row.Cells[2].Text) < 30000)
{
e.Row.BackColor =
System.Drawing.Color.RosyBrown;
}
}
}
Noe let me run my app and see result:-
In the above article I try to explain the RowdataBound Events of GridView in asp.net c# with example. I hope its useful to you. Please post your feedback, question, or comments about this article.
No comments:
Post a Comment