Does the Checkboxlist within gridview cell counts all selected items?
Let us see.
Create Table Here I Provide Script
CREATE TABLE [dbo].[Food](
[Fid] [bigint] primary key IDENTITY(1,1) NOT NULL,
[Fname] [nvarchar](100) NULL,
[Fprice] [bigint] NULL,
[Recstatus] [char](1) NULL,
)
INSERT INTO Food(Fname,Fprice,Recstatus)VALUES('Dal',2000,'A')
INSERT INTO Food(Fname,Fprice,Recstatus)VALUES('Rice',52000,'A')
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="FindingCheckboxlistSelectedItems.aspx.cs"
Inherits="FindingCheckboxlistSelectedItems" %>
<!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 id="Head1" runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" CellPadding="4"
GridLines="Horizontal" BackColor="White" BorderColor="#336666" BorderStyle="Double"
BorderWidth="3px">
<Columns>
<asp:TemplateField HeaderText="Product">
<ItemTemplate>
<asp:TextBox ID="TextBox1" BackColor="BurlyWood" runat="server"></asp:TextBox>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Product">
<ItemTemplate>
<asp:CheckBoxList ID="CheckBoxList1" RepeatLayout="Flow" RepeatDirection="Horizontal"
runat="server">
<asp:ListItem Text="One" Value="1">
</asp:ListItem>
<asp:ListItem Text="Two" Value="2">
</asp:ListItem>
<asp:ListItem Text="Three" Value="3">
</asp:ListItem>
<asp:ListItem Text="Four" Value="4">
</asp:ListItem>
</asp:CheckBoxList>
<br />
</ItemTemplate>
</asp:TemplateField>
</Columns>
<FooterStyle BackColor="White" ForeColor="#333333" />
<HeaderStyle BackColor="#336666" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#336666" ForeColor="White" HorizontalAlign="Center" />
<RowStyle BackColor="White" ForeColor="#333333" />
<SelectedRowStyle BackColor="#339966" Font-Bold="True" ForeColor="White" />
<SortedAscendingCellStyle BackColor="#F7F7F7" />
<SortedAscendingHeaderStyle BackColor="#487575" />
<SortedDescendingCellStyle BackColor="#E5E5E5" />
<SortedDescendingHeaderStyle BackColor="#275353" />
</asp:GridView>
</div>
<asp:Button ID="Button1" runat="server" Text="Get Data" OnClick="Button1_Click" />
</form>
</body>
</html>
To Bind Gridview Using This Method
public void bindgrid()
{
SqlCommand cmd = new SqlCommand("select * from food ", con);
cmd.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = cmd;
DataTable dt = new DataTable();
da.Fill(dt);
if (dt.Rows.Count > 0)
{
GridView1.DataSource = dt;
GridView1.DataBind();
}
else
{
DataRow dr = dt.NewRow();
dt.Rows.Add(dr);
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
bindgrid();
}
}
protected void Button1_Click(object sender, EventArgs e)
{
foreach (GridViewRow GVR in GridView1.Rows)
{
CheckBoxList chk = (CheckBoxList)GVR.Cells[1].FindControl("CheckBoxList1");
string store = "";
foreach (ListItem li in chk.Items)
{
if (li.Selected)
{
store += li.Value + ";";
}
}
TextBox TextBox1 = (TextBox)GVR.Cells[0].FindControl("TextBox1");
TextBox1.Text = store;
}
}