Hi,
check this Example will Guide you.
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
bind();
}
}
DataTable dt = new DataTable();
void bind()
{
using (
SqlConnection con =
new SqlConnection(ConfigurationManager.ConnectionStrings["testConnectionString"].ConnectionString))
{
SqlCommand cmd = new SqlCommand("select * from dbo.Orders ", con);
SqlDataAdapter adpt = new SqlDataAdapter(cmd);
adpt.Fill(dt);
GridView1.DataSource = null;
GridView1.DataSource = dt;
GridView1.DataBind();
ViewState.Add("dt", dt);
cmd.Dispose();
}
}
protected void GridView1_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
GridView1.PageIndex = e.NewPageIndex;
dt = (DataTable)ViewState["dt"];
if (ViewState["flag"] != null)
{
if ((bool)ViewState["flag"] == true)
{
GridView1.DataSource = null;
dt = (DataTable)ViewState["dt"];
DataView dvwData = new DataView(dt);
dvwData.RowFilter = "orderID =" + Convert.ToInt32(TextBox1.Text) + "";
GridView1.DataSource = dvwData;
GridView1.DataBind();
}
}
else
{
bind();
}
}
protected void Button1_Click(object sender, EventArgs e)
{
ViewState.Add("flag", true);
dt = (DataTable)ViewState["dt"];
DataView dvwData = new DataView(dt);
dvwData.RowFilter = "orderID ="+Convert.ToInt32(TextBox1.Text)+"";
GridView1.DataSource = dvwData;
GridView1.DataBind();
}
<div>
<asp:GridView ID="GridView1" runat="server" AllowPaging="True"
onpageindexchanging="GridView1_PageIndexChanging" PageSize="5">
</asp:GridView>
<br />
<br />
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</div>
Best Regards
M.Mitwalli