Hi democloud,
I have created an sample please refer it.
Database
For this example I have used of Northwind database that you can download using the link given below.
Download Northwind Database
HTML
Select Country:
<asp:DropDownList runat="server" ID="ddlCountries">
<asp:ListItem Value="0" Text="--Select--" Selected="True" />
<asp:ListItem Value="1" Text="USA" />
<asp:ListItem Value="2" Text="UK" />
</asp:DropDownList>
<br />
<asp:Button Text="Submit" runat="server" ID="btnSubmit" OnClick="Submit_Click" />
<br />
<asp:GridView ID="gvAll" runat="server" EmptyDataText="No Record Found" AutoGenerateColumns="False"
AllowPaging="True" DataKeyNames="EmployeeID" PagerSettings-Mode="NumericFirstLast"
PageSize="3" OnPageIndexChanging="gvAll_PageIndexChanging">
<Columns>
<asp:BoundField DataField="EmployeeID" HeaderText="ID" />
<asp:BoundField DataField="Name" HeaderText="Client Name" />
<asp:BoundField DataField="City" HeaderText="City" />
<asp:BoundField DataField="Country" HeaderText="Country" />
</Columns>
</asp:GridView>
Namespace
C#
using System.Configuration;
using System.Data;
using System.Data.SqlClient;
VB.NET
Imports System.Configuration
Imports System.Data
Imports System.Data.SqlClient
Code
C#
public void BindGrid()
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["conString"].ConnectionString);
if (ddlCountries.SelectedIndex > 0)
{
using (SqlCommand cmd = new SqlCommand("SELECT EmployeeID,FirstName+' '+LastName Name,City,Country FROM Employees WHERE Country = @Country", con))
{
cmd.Parameters.AddWithValue("@Country", ddlCountries.SelectedItem.Text);
cmd.CommandType = CommandType.Text;
using (SqlDataAdapter sda = new SqlDataAdapter(cmd))
{
DataSet ds = new DataSet();
sda.Fill(ds);
this.gvAll.DataSource = ds;
this.gvAll.DataBind();
}
}
}
}
protected void Submit_Click(object sender, EventArgs e)
{
this.gvAll.PageIndex = 0;
this.BindGrid();
}
protected void gvAll_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
this.gvAll.PageIndex = e.NewPageIndex;
this.BindGrid();
}
VB.NET
Public Sub BindGrid()
Dim con As SqlConnection = New SqlConnection(ConfigurationManager.ConnectionStrings("conString").ConnectionString)
If ddlCountries.SelectedIndex > 0 Then
Using cmd As SqlCommand = New SqlCommand("SELECT EmployeeID,FirstName+' '+LastName Name,City,Country FROM Employees WHERE Country = @Country", con)
cmd.Parameters.AddWithValue("@Country", ddlCountries.SelectedItem.Text)
cmd.CommandType = CommandType.Text
Using sda As SqlDataAdapter = New SqlDataAdapter(cmd)
Dim ds As DataSet = New DataSet()
sda.Fill(ds)
Me.gvAll.DataSource = ds
Me.gvAll.DataBind()
End Using
End Using
End If
End Sub
Protected Sub Submit_Click(ByVal sender As Object, ByVal e As EventArgs)
Me.gvAll.PageIndex = 0
Me.BindGrid()
End Sub
Protected Sub gvAll_PageIndexChanging(ByVal sender As Object, ByVal e As GridViewPageEventArgs)
Me.gvAll.PageIndex = e.NewPageIndex
Me.BindGrid()
End Sub
Screenshot