Hi friends,
I am using datalist to diplay image gallery with paging, i have done it successfully,
but i am getting all the images from database at at a time in page load.
but my requirement is that i need to get the images per page 8 once the page is loaded after thet when click on the page number 2 or next again it has to get the images from databse by sending the request to server.
Please help me on this if any smaple code is there with you, please send me
Thanks In advance
Loading
Satyapriya NayakPosted Jan 31, 2012, 11:24 PM
Change the page size accordingly as below
Pds1.PageSize = 8;
Default.aspx code
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
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 runat="server">
<title>Untitled Pagetitle>
head>
<body>
<form id="form1" runat="server">
<div>
<table border="1">
<asp:DataList ID="dl1" runat="server">
<HeaderTemplate>
<font color="red"><b>Employee Detailsb>font>
HeaderTemplate>
<itemtemplate>
<tr>
<td><font color="Green"><b>IDb>font>td>
<td><font color="Green"><b>NAMEb>font>td>
<td><font color="Green"><b>SALARYb>font>td>
<td><font color="Green"><b>ADDRESSb>font>td>
<td><font color="Green"><b>DESIGNATIONb>font>td>
tr>
<tr>
<td> <font color="#ff8000"><b><%#Eval("empid")%>b>font>td>
<td> <font color="Fuchsia"><b><%#Eval("empname")%>b>font>td>
<td> <font color="#663300"><b><%#Eval("empsal")%>b>font>td>
<td> <font color="Purple"><b><%#Eval("empadd")%>b>font>td>
<td> <font color="#808040"><b><%#Eval("empdes")%>b>font>td>
tr>
itemtemplate>
asp:DataList>
table>
<table width="100%" border="0">
<tr>
<td> <asp:label id="lbl1" runat="server" BackColor="Yellow" BorderColor="Yellow"
Font-Bold="True" ForeColor="#FF3300">asp:label>td>
tr>
<tr>
<td> <asp:button id="btnPrevious" runat="server" text="Previous" Width="60px"
onclick="btnPrevious_Click">asp:button>
<asp:button id="btnNext" runat="server" text="Next" Width="60px"
onclick="btnNext_Click">asp:button>td>
tr>
table>
div>
form>
body>
html>
Default.aspx.vb code
using System;
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 _Default : System.Web.UI.Page
{
string strConnString = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
string str ;
SqlCommand com;
SqlDataAdapter sqlda;
DataSet ds;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
binddatalist();
}
}
private void binddatalist()
{
SqlConnection con = new SqlConnection(strConnString);
con.Open();
str = "select * from employee";
com = new SqlCommand(str, con);
sqlda = new SqlDataAdapter(com);
ds = new DataSet();
sqlda.Fill(ds, "employee");
PagedDataSource Pds1 = new PagedDataSource();
Pds1.DataSource = ds.Tables[0].DefaultView;
Pds1.AllowPaging = true;
Pds1.PageSize = 8;
Pds1.CurrentPageIndex = CurrentPage;
lbl1.Text = "Showing Page: " + (CurrentPage + 1).ToString() + " of " + Pds1.PageCount.ToString();
btnPrevious.Enabled = !Pds1.IsFirstPage;
btnNext.Enabled = !Pds1.IsLastPage;
dl1.DataSource = Pds1;
dl1.DataBind();
con.Close();
}
public int CurrentPage
{
get
{
object s1 = this.ViewState["CurrentPage"];
if (s1 == null)
{
return 0;
}
else
{
return Convert.ToInt32(s1);
}
}
set { this.ViewState["CurrentPage"] = value; }
}
protected void btnPrevious_Click(object sender, EventArgs e)
{
CurrentPage -= 1;
binddatalist();
}
protected void btnNext_Click(object sender, EventArgs e)
{
CurrentPage += 1;
binddatalist();
}
}Thanks