I have implemented what you suggested but still i am facing the same issue.Can you please check my code i am sending you the reference.
using System;
using System.Collections;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
public partial class Materialstatus : System.Web.UI.Page
{
string ddlToGrid = string.Empty;
String GridViewString = string.Empty;
SqlConnection con = new SqlConnection(("Data Source=DESKTOP-Q9A9LKG;Initial Catalog=FileModule;Persist Security Info=True;User ID=sa; password=krishna"));
SqlDataReader ddlloadingReader = null;
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
ddlloading();
}
}
protected void ddlloading()
{
ddlItemType.AppendDataBoundItems = true;
ddlItemType.Items.Add(new ListItem("--Select Item Type--", "-1"));
SqlCommand cmdddl = new SqlCommand();
cmdddl.CommandType = CommandType.Text;
cmdddl.Connection = con;
String strQuery = "select Distinct ITM1 from Allstatus2Export";
cmdddl.CommandText = strQuery;
try
{
con.Open();
ddlloadingReader = cmdddl.ExecuteReader();
ddlItemType.DataSource = ddlloadingReader;
ddlItemType.DataTextField = "ITM1";
ddlItemType.DataBind();
cmdddl.Parameters.Clear();
ddlloadingReader.Close();
ddlMaterial.Items.Add(new ListItem("--Select Material code--", "-1"));
ddlMaterial.AppendDataBoundItems = true;
strQuery = "select Distinct Material from Allstatus2Export";
cmdddl.CommandText = strQuery;
ddlloadingReader = cmdddl.ExecuteReader();
ddlMaterial.DataSource = ddlloadingReader;
ddlMaterial.DataTextField = "Material";
ddlMaterial.DataBind();
cmdddl.Parameters.Clear();
ddlloadingReader.Close();
ddlMtrlGrp.Items.Add(new ListItem("--Select Material Group--", "-1"));
ddlMtrlGrp.AppendDataBoundItems = true;
strQuery = "select Distinct [Mtrl Grp] from Allstatus2Export";
cmdddl.CommandText = strQuery;
ddlloadingReader = cmdddl.ExecuteReader();
ddlMtrlGrp.DataSource = ddlloadingReader;
ddlMtrlGrp.DataTextField = "Mtrl Grp";
ddlMtrlGrp.DataBind();
cmdddl.Parameters.Clear();
ddlloadingReader.Close();
}
catch (Exception ex)
{
throw ex;
}
finally
{
cmdddl.Dispose();
}
}
protected void ddlItemType_SelectedIndexChanged(object sender, EventArgs e)
{
GridViewString = " ITM1 = ";
ddlToGrid = ddlItemType.SelectedValue;
this.BindGrid();
}
protected void ddlMaterial_SelectedIndexChanged(object sender, EventArgs e)
{
GridViewString = " Material = ";
ddlToGrid = ddlMaterial.SelectedValue;
this.BindGrid();
}
protected void ddlMtrlGrp_SelectedIndexChanged(object sender, EventArgs e)
{
GridViewString = " [Mtrl Grp] = ";
ddlToGrid = ddlMtrlGrp.SelectedValue;
this.BindGrid();
}
protected void BindGrid()
{
DataTable dt = new DataTable();
SqlDataAdapter da = new SqlDataAdapter();
String strQuery = "select Material,BRDESC,[Mtrl Grp] from Allstatus2Export where" +
GridViewString + "@ITM1" + " Order By Material";
SqlCommand cmd = new SqlCommand();
cmd.Parameters.AddWithValue("@ITM1", ddlToGrid);
cmd.CommandType = CommandType.Text;
cmd.CommandText = strQuery;
cmd.Connection = con;
try
{
da.Fill(dt);
if (dt.Rows.Count > 0)
{
GridView1.DataSource = dt;
GridView1.DataBind();
}
}
catch (Exception ex)
{
throw ex;
}
finally
{
con.Close();
}
}
protected void gdv1_OnPaging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
BindGrid();
}
}
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" Runat="Server">
<%-- <span style ="font-family:Arial">Select Item Type : </span>
<asp:Label ID="lblResults" runat="server" Text="item type" Font-Names = "Arial" />--%>
<table class="style1">
<tr>
<td colspan="4">
Choose Details to Search
</td>
</tr>
<tr>
<td colspan="1">
<asp:DropDownList ID="ddlItemType" runat="server"
AutoPostBack="True"
OnSelectedIndexChanged="ddlItemType_SelectedIndexChanged"
ToolTip="Select Item Type" >
</asp:DropDownList>
</td>
<td>
<asp:DropDownList ID="ddlMaterial" runat="server"
AutoPostBack="True"
OnSelectedIndexChanged="ddlMaterial_SelectedIndexChanged"
ToolTip="Select Item Type" >
<%--<asp:ControlParameter ControlID="DDLVisitedVol" Name="VisitedVol" PropertyName="SelectedValue" Type="String"/>--%>
</asp:DropDownList>
</td>
<td>
<asp:DropDownList ID="ddlMtrlGrp" runat="server"
AutoPostBack="True"
OnSelectedIndexChanged="ddlMtrlGrp_SelectedIndexChanged"
ToolTip="Select Item Type" >
</asp:DropDownList>
</td>
</tr>
<tr>
<td>
</td>
<td>
</td>
<td>
</td>
</tr>
<tr>
<td colspan="4">
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns = "False" AllowPaging="true"
OnPageIndexChanging="gdv1_OnPaging" PageSize="5" DataKeyNames = "Material"
CSSClass= "~/Styles" EnableViewState="False" PagerSettings-Mode="Numeric">
<SelectedRowStyle CssClass= "SelectedRowStyle"/>
<Columns>
<asp:BoundField DataField="Material" HeaderText="MaterialCode" />
<asp:BoundField DataField="BRDESC" HeaderText="Brief Description" />
<asp:BoundField DataField="Mtrl Grp" HeaderText="Material Gr" />
</Columns>
</asp:GridView>
</td>
</tr>
</table>
<%--<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:dbconnection %>"
SelectCommand="SELECT Distinct ITM1 AS ItemType FROM Allstatus2Export">
</asp:SqlDataSource>
<br /><br />--%>
</asp:Content>