i do multi select check list when i run the code it doesnt gave me any data
What I have tried:
<pre><%@ Page Title="" Language="C#" MasterPageFile="~/User.Master" AutoEventWireup="true" CodeBehind="SearchInEmployeeAtt.aspx.cs" Inherits="Mypro.SearchInEmployeeAtt" %>
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<div class=" container">
<h3>Advanced Attendance Filter</h3>
<div class="row">
<div class="col-lg-3 col-md-3 col-xs-12 col-sm-12" style="padding-top:25px" >
<div class="form-group">
<asp:LinkButton ID="SrcBtn" OnClick="SrcBtn_Click" runat="server" CssClass="btn btn-small btn-danger"> Search</asp:LinkButton> </div>
</div>
</div>
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdatePanel ID="updatepanel1" runat="server">
<ContentTemplate>
<div class="row">
<div class="col-lg-3 col-md-3 col-sm-12 col-xs-12">
<div class="form-group row">
<label for="staticEmail" class=" col-form-label">Date From </label>
<asp:TextBox ID="TxtDate" runat="server" TextMode="Date" CssClass="form-control" ></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator5" CssClass="text-danger" runat="server" ErrorMessage="Required !" ControlToValidate="TxtDate" ></asp:RequiredFieldValidator>
</div>
</div>
<div class="col-lg-3 col-md-3 col-sm-12 col-xs-12">
<div class="form-group row">
<label for="staticEmail" class=" col-form-label">Date To </label>
<asp:TextBox ID="TxtTo" runat="server" TextMode="Date" CssClass="form-control" ></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" CssClass="text-danger" runat="server" ErrorMessage="Required !" ControlToValidate="TxtTo" ></asp:RequiredFieldValidator>
</div>
</div>
<div class="col-lg-3 col-md-3 col-xs-12 col-sm-12">
<div class="form-group row">
<label for="inputPassword" class=" col-form-label">Please Choose Status Name</label>
<asp:TextBox ID="TextBox1" runat="server" AutoCompleteType="Disabled" CssClass="form-control" AutoPostBack="true" ></asp:TextBox>
<asp:TextBox ID="TextBox2" runat="server" AutoCompleteType="Disabled" CssClass="form-control" AutoPostBack="true" Visible="true"></asp:TextBox>
<ajaxToolkit:PopupControlExtender ID="TextBox1_PopupControlExtender" runat="server"
Enabled="True" ExtenderControlID="" TargetControlID="TextBox1"
PopupControlID="Panel1" >
</ajaxToolkit:PopupControlExtender>
<asp:Panel ID="Panel1" runat="server" Height="140px" Width="170px" BorderStyle="Solid" BorderWidth="3px" Direction="LeftToRight" ScrollBars="Auto" BackColor="beige" Style="display: none">
<asp:CheckBox ID="chkAll" Text="Select All" runat="server" OnCheckedChanged="chkAll_CheckedChanged" AutoPostBack = "true" />
<asp:CheckBoxList ID="CheckBoxList1" runat="server" AutoPostBack="True" OnSelectedIndexChanged="CheckBoxList1_SelectedIndexChanged"></asp:CheckBoxList>
</asp:Panel>
</div>
</div>
<div class="col-lg-3 col-md-3 col-xs-12 col-sm-12">
<div class="form-group row">
<label for="inputPassword" class=" col-form-label">Please Choose Region Name</label>
<asp:TextBox ID="TextBox3" runat="server" AutoCompleteType="Disabled" CssClass="form-control" AutoPostBack="true" ></asp:TextBox>
<asp:TextBox ID="TextBox4" runat="server" AutoCompleteType="Disabled" CssClass="form-control" AutoPostBack="true" Visible="true"></asp:TextBox>
<ajaxToolkit:PopupControlExtender ID="PopupControlExtender1" runat="server"
Enabled="True" ExtenderControlID="" TargetControlID="TextBox3"
PopupControlID="Panel2" >
</ajaxToolkit:PopupControlExtender>
<asp:Panel ID="Panel2" runat="server" Height="140px" Width="170px" BorderStyle="Solid" BorderWidth="3px" Direction="LeftToRight" ScrollBars="Auto" BackColor="beige" Style="display: none">
<asp:CheckBox ID="Checkall" Text="Select All" runat="server" OnCheckedChanged="Checkall_CheckedChanged" AutoPostBack = "true" />
<asp:CheckBoxList ID="CheckBoxList2" runat="server" AutoPostBack="True" OnSelectedIndexChanged="CheckBoxList2_SelectedIndexChanged"></asp:CheckBoxList>
</asp:Panel>
</div>
</div>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</div>
<div class="row">
<div class="col-lg-12 col-md-12 col-xs-12 col-sm-12">
<asp:Panel ID="Panel3" runat="server" ScrollBars="Both" >
<asp:GridView ID="GrdData" runat="server" CellPadding="4" CssClass="table table-responsive table-striped " ForeColor="#333333" GridLines="None" AllowPaging="True" OnPageIndexChanging="GrdData_PageIndexChanging" >
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
<EditRowStyle BackColor="#999999" />
<FooterStyle BackColor="#4B0082" Font-Bold="True" ForeColor="White" />
<HeaderStyle BackColor="#4B0082" Font-Bold="True" ForeColor="White" />
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
<SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<SortedAscendingCellStyle BackColor="#E9E7E2" />
<SortedAscendingHeaderStyle BackColor="#506C8C" />
<SortedDescendingCellStyle BackColor="#FFFDF8" />
<SortedDescendingHeaderStyle BackColor="#6F8DAE" />
<EditRowStyle BackColor="WindowFrame" />
<SelectedRowStyle BackColor="WindowFrame" />
</asp:GridView>
</asp:Panel>
</div>
</div>
</div>
</asp:Content>
<pre>alter PROCEDURE [dbo].[BIND_ATTENDANCE_ADVANCED_FILTER]
@AttendanceDate date,
@DateTo date,
@AttendanceStatus nvarchar(max)
AS
BEGIN
select RegionName,BranchName,AttendanceID,DATENAME(weekday, AttendanceDate) as Day_Name,CONVERT(VARCHAR(10),AttendanceDate,101) as AttendanceDate,ShiftFrom,ShiftTo,StatusName from TblAttendance
inner join TblBranch on TblAttendance.BranchID=TblBranch.BranchID
inner join TblStatus on TblAttendance.AttendanceStatus=TblStatus.StatusID
inner join TBLRegion on TblAttendance.RegionID=TBLRegion.RegionID
where AttendanceDate>=@AttendanceDate and AttendanceDate<=@DateTo and StatusName in(''+@AttendanceStatus+'') and StatusBalance<=0
order by TblAttendance.RegionID,TblAttendance.BranchID asc
END
public DataTable BindattendanceAdvancedFilter(BusinessObject_Layer.BO_Layer objbo)
{
SqlParameter[] param = new SqlParameter[3];
param[0] = new SqlParameter("@AttendanceDate", SqlDbType.Date)
{
Value = objbo.AttendanceDate
};
param[1] = new SqlParameter("@DateTo", SqlDbType.Date)
{
Value = objbo.Dateto
};
param[2] = new SqlParameter("@AttendanceStatus", SqlDbType.NVarChar,1000)
{
Value = objbo.StatusAttendanceFilter
};
Dal.Open();
DataTable dt = new DataTable();
dt = Dal.SelectData("BIND_ATTENDANCE_ADVANCED_FILTER", param);
return dt;
}
<pre> protected void CheckBoxList1_SelectedIndexChanged(object sender, EventArgs e)
{
string StatusName = "";
string StaTusValues = "";
for (int i = 0; i < CheckBoxList1.Items.Count; i++)
{
if (CheckBoxList1.Items[i].Selected)
{
StatusName += "'" + CheckBoxList1.Items[i].Text + "',";
StaTusValues += "'" + CheckBoxList1.Items[i].Value + "',";
}
}
TextBox1.Text = StatusName.Remove(StatusName.Length - 1, 1).Substring(1);
TextBox2.Text = StaTusValues.Remove(StaTusValues.Length - 1, 1);
}
<pre>protected void chkAll_CheckedChanged(object sender, EventArgs e)
{
foreach (ListItem item in CheckBoxList1.Items)
{
if (chkAll.Checked==true)
{
string StatusName = "";
string StaTusValues = "";
for (int i = 0; i < CheckBoxList1.Items.Count; i++)
{
item.Selected = chkAll.Checked;
StatusName += "'" + CheckBoxList1.Items[i].Text + "',";
StaTusValues += "'" + CheckBoxList1.Items[i].Value+ "',";
}
TextBox1.Text = StatusName.Remove(StatusName.Length - 1, 1).Substring(1) ;
TextBox2.Text =StaTusValues.Remove(StaTusValues.Length - 1, 1) ;
}else if (chkAll.Checked == false)
{
TextBox1.Text = "";
TextBox2.Text = "";
item.Selected = false;
}
}
}
<pre>protected void chkAll_CheckedChanged(object sender, EventArgs e)
{
foreach (ListItem item in CheckBoxList1.Items)
{
if (chkAll.Checked==true)
{
string StatusName = "";
string StaTusValues = "";
for (int i = 0; i < CheckBoxList1.Items.Count; i++)
{
item.Selected = chkAll.Checked;
StatusName += "'" + CheckBoxList1.Items[i].Text + "',";
StaTusValues += "'" + CheckBoxList1.Items[i].Value+ "',";
}
TextBox1.Text = StatusName.Remove(StatusName.Length - 1, 1).Substring(1) ;
TextBox2.Text =StaTusValues.Remove(StaTusValues.Length - 1, 1) ;
}else if (chkAll.Checked == false)
{
TextBox1.Text = "";
TextBox2.Text = "";
item.Selected = false;
}
}
}
private void BinDattendance()
{
BusinessObject_Layer.BO_Layer objbo = new BusinessObject_Layer.BO_Layer();
objbo.AttendanceDate = Convert.ToDateTime(TxtDate.Text);
objbo.Dateto = Convert.ToDateTime(TxtTo.Text);
objbo.StatusAttendanceFilter =TextBox1.Text;
DataTable dt = BSS.BindattendanceAdvancedFilter(objbo);
GrdData.DataSource = dt;
GrdData.DataBind();
}
protected void SrcBtn_Click(object sender, EventArgs e)
{
BinDattendance();
}