This article will show you how you can find selected row
value of gridview on button click in asp.net using c#.net. In this we will
display selected row of in gridview.
Some of my previous articles are as follows: Detect
Checked CheckBox Indise GridView on Button Click In Asp.Net Using C#.Net, Page
Count Display in GridView Footer In Asp.Net Using C#.Net, GridView
Bind Using DataTable With Paging In Asp.Net Using C#.Net, Single
RadioButton Selection in GridView In Asp.Net Using C#.Net, Bind
and Validate GridView TextBox Value by jQuery In Asp.Net Using C#, Bind
and Validate GridView TextBox Value by RequiredFieldValidator In Asp.Net Using
C#, Populate
Data in GridView on DropdownList Selected Role in Asp.net Using C#.net, Search
and Display Data In GridView From Database Table In Asp.Net Using C#.Net, Read
XML File Data Using Linq Query and Add in DataTable to Bind GridView in Asp.net
Using C#.Net, Bind
& Search XML File Data and Display in GridView in Asp.net Using C#.Net,
Search
GridView Record on Button Click By Using C#.Net in Asp.Net.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="WebApplication1.WebForm1"
%>
<!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>Find
Selected Row Value Of GridView on Button Click In Asp.Net Using C#.Net
</title>
</head>
<body>
<form id="form1" runat="server">
<table width="100%" cellpadding="4" cellspacing="4">
<tr>
<td align="left">
<asp:GridView ID="GridView1" runat="server" Width="100%" AutoGenerateColumns="False"
AllowPaging="True">
<Columns>
<asp:TemplateField HeaderText="">
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" />
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Name">
<ItemTemplate>
<asp:Label ID="lblName"
runat="server"
Text='<%# Eval("Name") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Address">
<ItemTemplate>
<asp:Label ID="lblNamAddress"
runat="server"
Text='<%# Eval("Address") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="User
Type">
<ItemTemplate>
<asp:Label ID="lblUserType"
runat="server"
Text='<%# Eval("UserType") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</td>
</tr>
</table>
<asp:Label ID="lblSelectedRowValue" runat="server"
Style="color: #FF0000"
Text=""></asp:Label>
<br />
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Submit" />
</form>
</body>
</html>
|
In above code I have use itemtemplate to bind the gridview
fields and used label control to display the value using Eval.
Now check the code to bind and display no of pages.
using System;
using System.Data.SqlClient;
using System.Data;
using System.Web.UI.WebControls;
using System.Collections;
namespace WebApplication1
{
public partial class WebForm1 : System.Web.UI.Page
{
protected
void Page_Load(object
sender, EventArgs e)
{
if
(!IsPostBack)
{
GetDistinctValue();
}
}
private
void GetDistinctValue()
{
SqlConnection
con = new SqlConnection(System.Configuration.
ConfigurationManager.ConnectionStrings["con"].ToString());
try
{
DataTable
objdt = new DataTable();
string
query = "select * from UserDetail;";
SqlDataAdapter
da = new SqlDataAdapter(query,
con);
con.Open();
da.Fill(objdt);
con.Close();
if
(objdt.Rows.Count > 0)
{
GridView1.DataSource =
objdt;
GridView1.DataBind();
}
}
catch
{
con.Close();
}
}
protected
void Button1_Click(object
sender, EventArgs e)
{
string
SelectedName = "";
foreach
(GridViewRow item in
GridView1.Rows)
{
CheckBox
checkbox1 = (CheckBox)item.FindControl("CheckBox1");
if
(checkbox1.Checked == true)
{
Label
lblName = (Label)item.FindControl("lblName");
Label
lblNamAddress = (Label)item.FindControl("lblNamAddress");
Label
lblUserType = (Label)item.FindControl("lblUserType");
SelectedName = "Name : "+ lblName.Text + "";
SelectedName =
SelectedName + "Address : " +
lblNamAddress.Text + "";
SelectedName =
SelectedName + "Type : " +
lblUserType.Text + "";
}
}
lblSelectedRowValue.Text =
SelectedName;
}
}
}
|
On above code I have used a function to bind the data. Now I
have I have added the. Now check the below code to display the selected row of
gridview control. I have displayed the selected row value on a label control.
string
SelectedName = "";
foreach
(GridViewRow item in
GridView1.Rows)
{
CheckBox
checkbox1 = (CheckBox)item.FindControl("CheckBox1");
if
(checkbox1.Checked == true)
{
Label
lblName = (Label)item.FindControl("lblName");
Label
lblNamAddress = (Label)item.FindControl("lblNamAddress");
Label
lblUserType = (Label)item.FindControl("lblUserType");
SelectedName = "Name : "+ lblName.Text + "";
SelectedName =
SelectedName + "Address : " +
lblNamAddress.Text + "";
SelectedName =
SelectedName + "Type : " +
lblUserType.Text + "";
}
}
lblSelectedRowValue.Text =
SelectedName;
|
Now we have done run the application to check the output.
0 comments:
Please let me know your view