Forms Data Controls :: Paging Datalist - Display The Next Page Of Results Doesn't Do Anything
Feb 9, 2010
I have a datalist and want the results paged I have written a pager.ascx page and have an aspx and aspx.cs page to display the results. I have a stored procedure to pull the data out of the database and a class to talk between the stored procedure and presentation controls I have the pager being displayed when the results get over the limit I have set to 10 in the web.config file but when i click on the next link to display the next page of results it doesn't do anything. my aspx page is
<uc1:Pager ID="topPager" runat="server" Visible="False" />
<asp:DataList ID="newsList" runat="server" CssClass="List" align="center">
<ItemStyle CssClass="ItemList" />
<ItemTemplate>
<h2><%# Eval("Title") %></h2>
<p>Posted <%# Eval("Date") %></p>
<p><%# Eval("News").ToString().Replace("
", "<br />") %></p>
</ItemTemplate>
</asp:DataList>
<uc1:Pager ID="bottomPager" runat="server" Visible="False" />
my aspx.cs page is
protected void Page_Load(object sender, EventArgs e)
{
// Retreive page from the query string
string page = Request.QueryString["Page"];
if (page == null) page = "1";
// How many pages of posts
int howManyPages = 1;
// pager links format
string firstPageUrl = "";
string pagerFormat = "";
//DataAccess.GetNews returns a DataTable object containing news data which is read into datalist
newsList.DataSource = DataAccess.GetNews(page, out howManyPages);
// Bind the data to the data source
newsList.DataBind();
// have the current page as interger
int currentPage = Int32.Parse(page);
// Display pager controls
topPager.Show(int.Parse(page), howManyPages, firstPageUrl, pagerFormat, false);
bottomPager.Show(int.Parse(page), howManyPages, firstPageUrl, pagerFormat, true);
}
my pager.ascx page is
<p>
Page
<asp:Label ID="currentPagelabel" runat="server" />
of
<asp:Label ID="howManyPageLabel" runat="server" />
|
<asp:HyperLink ID="previousLink" runat="server">Previous</asp:HyperLink>
<asp:Repeater ID="pagesRepeater" runat="server">
<ItemTemplate>
<asp:HyperLink ID="hyperlink" runat="server" Text='<%# Eval("Page") %>' NavigateUrl='<%# Eval("Url") %>' />
</ItemTemplate>
</asp:Repeater>
<asp:HyperLink ID="nextLink" runat="server">Next</asp:HyperLink>
</p>
my pager.aspx.cs page is
using System;
// Simple struct that represents a (page number, url) association
public struct PageUrl
{
private string page;
private string url;
// Page property definition
public string Page
{
get
{
return page;
}
}
// Url property definition
public string Url
{
get
{
return url;
}
}
// Constructor
public PageUrl(string page, string url)
{
this.page = page;
this.url = url;
}
}
// The pager control
public partial class UserControls_Pager : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
}
// Show the pager
public void Show(int currentPage, int howManyPages, string firstPageUrl, string pageUrlFormat, bool showPages)
{
// Display paging controls
if (howManyPages > 1)
{
// make the pager visable
this.Visible = true;
// Display the current page
currentPagelabel.Text = currentPage.ToString();
howManyPageLabel.Text = howManyPages.ToString();
// Create the Previous link
if (currentPage == 1)
{
previousLink.Enabled = false;
}
else
{
previousLink.NavigateUrl = (currentPage == 2) ? firstPageUrl : String.Format(pageUrlFormat, currentPage - 1);
}
// Create the Next link
if (currentPage == howManyPages)
{
nextLink.Enabled = false;
}
else
{
nextLink.NavigateUrl = String.Format(pageUrlFormat, currentPage + 1);
}
// Create the page links
if (showPages)
{
// The list of pages and their URLs as an array
PageUrl[] pages = new PageUrl[howManyPages];
// Generate (page, url) elements
pages[0] = new PageUrl("1", firstPageUrl);
for (int i = 2; i <= howManyPages; i++)
{
pages[i - 1] = new PageUrl(i.ToString(), String.Format(pageUrlFormat, i));
}
// Do not generate a link for current page
pages[currentPage - 1] = new PageUrl((currentPage).ToString(), "");
// Feed the pages to the repeater
pagesRepeater.DataSource = pages;
pagesRepeater.DataBind();
}
}
}
}
my class file is
// Retreive the list of news posts
public static DataTable GetNews(string pageNumber, out int howManyPages)
{
// Get a configured DbCommand object
DbCommand comm = GenericDataAccess.CreateCommand();
// Set the stored procedure name
comm.CommandText = "GetNews";
// create a new parameter for page number
DbParameter param = comm.CreateParameter();
param.ParameterName = "@PageNumber";
param.Value = pageNumber;
param.DbType = DbType.Int32;
comm.Parameters.Add(param);
// create a new parameter for products per page
param = comm.CreateParameter();
param.ParameterName = "@PostsPerPage";
param.Value = PlatiumMindProductionsConfiguration.PostsPerPage;
param.DbType = DbType.Int32;
comm.Parameters.Add(param);
param = comm.CreateParameter();
param.ParameterName = "@HowManyPosts";
param.Direction = ParameterDirection.Output;
param.DbType = DbType.Int32;
comm.Parameters.Add(param);
// Execute the stored procedure and saven the results in a DataTable
DataTable table = GenericDataAccess.ExecuteSelectCommand(comm);
// Calculate how many pages of posts and set the out parameter
int howManyPosts = Int32.Parse(comm.Parameters["@HowManyPosts"].Value.ToString());
howManyPages = (int)Math.Ceiling((double)howManyPosts / (double)PlatiumMindProductionsConfiguration.PostsPerPage);
// return the page of posts
return table;
}
my stored procedure is
ALTER PROCEDURE [dbo].[GetNews]
(@PageNumber INT,
@PostsPerPage INT,
@HowManyPosts INT OUTPUT)
AS
-- Declare a new table
DECLARE @News TABLE
(RowNumber INT,
NewsID INT,
Title NVARCHAR(50),
Date DATETIME,
News NVARCHAR(MAX))
-- Populate the table with the complete list
INSERT INTO @News
SELECT ROW_NUMBER() OVER (ORDER BY NewsID desc),
NewsID, Title, Date, News
FROM News
-- return the total number of posts
SELECT @HowManyPosts = COUNT(NewsID) FROM News
-- extract the request page of posts
SELECT NewsID, Title, DATE, News
FROM @News
WHERE RowNumber > (@PageNumber - 1) * @PostsPerPage
AND RowNumber <= @PageNumber * @PostsPerPage
View 1 Replies
Feb 25, 2010
I have a datalist inside 1 datalist.In the first datalist i am binding the "advertisement posted" date field from sql server. In the second datalist i am binding the ads posted on that date using an object datasource. my pro is, i need to show a total of 100 ads in one page. This should not depend on the date. Total 100 postings in the page. For example
Todays date (02/25/2010)
50 postings
yesterdays date (02/24/2010)
if 75 postings are there,
50 postings
it should display only 50 postings under yesterday's date remaining 25 postings should display in next page(paging) with the format like this
yesterdays date (02/24/2010)
remaining 25 postings
(02/23/2010)
75 postings
how can i do the paging like this?
View 3 Replies
Nov 15, 2010
The problem is that i have a search page. Access Database holding the information. I have a Access Datasource on the page with a Datalist to show the data. I need to find a way on setting it up to says "Sorry no results found" when the is no results. i am unsure on how to do this though.
Below is my datasource and datalist
[Code]....
View 6 Replies
Feb 26, 2010
I'm trying to set paging on my gridview but when i click on a page it doesn't work. It return a blank page. Here's my code:
[Code]....
Behind code:
[Code]....
View 9 Replies
Dec 30, 2010
I want to display the paging format like 1 2 3 4 5 ....... 20 in gridview pagnation
here total number of pages count is 20.
if user clicks on the 20,then the page no 20 will be display..
and the user cilcks on .....,the next five pages has to display with last page number like 6 7 8 9 10 ....... 20
View 3 Replies
Mar 5, 2010
we have a classic ASP Webpage for displaying reporting data.
The process is following:
user inputs reporting criteria reporting criteria are passed to a method in a VB6 DLL containing the reporting business logic (generating a dynmic sql statement) VB6 DLL method returns xml data xml data are displayed with xsd transformation 150.000 datarows are displayed in some seconds (less than 10 seconds maybe) Now we want to extend this reporting function and decided to use asp.net (2.0) So I have written a little prototyp application with a SqlDataSource Object and a GridView Control.
A table with less data (about 100 or so) are displayed quickly.
But a view with about 150.000 datarows needs about 2 minutes and ended with a OutOfMemoryException!
The request of the customer is definitvely to display the data on one page like in the old classic asp application!
View 1 Replies
Mar 11, 2010
I read a few VB books and ready or not, I going to start building!I am "very afraid" of code behind. Frankly, much of what I read about OOP went a bit over my head and am hoping by "doing" it will all come together. That said...
Datalist results. I want them to hyperlink to another page with a querystring. I moved a hyperlink control into the EDIT TEMPLATE box and removed the origianal label that was in the box. I did some editing and was able to come up with a hyperlink, but I really need a hyperlink to a new page with the original result of the datalist being the querystring parameter. For example...
If BABE RUTH is the datalist result, I want the querystring to be www.mysite.com?athlete=BABE%20RUTH. I am fairly competant in asp classic. I feel like a guy who has amnesia and has to learn the most basic stuff from scratch.
View 7 Replies
Jan 29, 2011
any body can tell me how can i use paging with datalist in asp.net application using vb code
i mean page numbers
View 3 Replies
Sep 21, 2010
I have made site with datalist and I want to use SQL data filtering and paging, my only problem is that i want to put filtering into paging procedure
paging 1)
Alter Procedure dbo.GetProductsPaged
View 2 Replies
Jan 28, 2010
i am trying datalist paging with dropdownlist. i am using vb.net with sql server
View 2 Replies
Mar 26, 2010
I want to implement paging in datalist like paging method in this forums.
View 4 Replies
Jan 6, 2010
I know how to do paging of datalist
But my problem is that i want to do a paging with some animated effect such as sliding a datalist content while paging or any other effect but there has to be some animation.
View 6 Replies
Dec 20, 2010
i want to apply pagging on top of datalist it should look like
<<previous 1 2 3 4 5 6 7 8 9 Next>> datallist is inside content place holder,
i am showing three records on one page.
View 2 Replies
Jan 22, 2010
how to apply paging to datalist . I am using ms access db & asp.net 2.0
View 2 Replies
Feb 11, 2011
I have the following datalist setup on my page, now that its on a dev server with alot of records, anytime the datalist is displayed, its just one long page with all the records..any suggestions on how i can enable paging with this setup?
[Code]....
View 9 Replies
Mar 30, 2011
I am facing problem in doing paging.Below is my datalist and gridview coding:
Datalist:
<head runat="server">
<title></title>
</head>[code].....
View 1 Replies
Nov 9, 2010
I've got a DataList showing images from a directory folder and this works well. However, I'd like to be able to page through the results rather than have one long page of images. I was wondering about putting the results in a GridView template somehow and use the paging on that.
Here's my code:
asp:DataList ID="DataList1" runat="server" RepeatColumns="3" CellPadding="0"
style="font-family: Arial, Helvetica, sans-serif; font-size: x-small"
Height="307px" Width="465px" BorderStyle="None" CellSpacing="3"
Font-Bold="False" Font-Italic="False" Font-Overline="False"
Font-Strikeout="False" Font-Underline="False" HorizontalAlign="Center"
RepeatDirection="Horizontal" ShowFooter="False" ShowHeader="False">
<ItemTemplate>
<asp:Image Width="108" Height="72px" ID="Image1" ImageUrl='<%# Eval("Name", "~/GalleryImages/{0}") %>' runat="server" /> <br /><br />
<asp:HyperLink ID="HyperLink1" Text='<%# Bind("Name") %>' NavigateUrl='<%# Bind("Name", "~/GalleryImages/{0}") %>' runat="server"/>
</ItemTemplate> <AlternatingItemStyle BorderStyle="None" />
<ItemStyle BorderColor="Silver" BorderStyle="None" BorderWidth="0px" HorizontalAlign="Center" VerticalAlign="Bottom" />
<SeparatorStyle Font-Bold="False" Font-Italic="False" Font-Overline="False"
Font-Strikeout="False" Font-Underline="False" VerticalAlign="Bottom" />
</asp:DataList>
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim dir As New DirectoryInfo(MapPath("~/GalleryImages/"))
Dim file As FileInfo() = dir.GetFiles()
Dim list As New ArrayList() For Each file2 As FileInfo In file
If file2.Extension = ".png" OrElse file2.Extension = ".jpeg" OrElse file2.Extension = ".jpg" Then list.Add(file2) End If Next
DataList1.DataSource = list DataList1.DataBind() End Sub
View 5 Replies
Apr 10, 2010
i am using asp:pager to do paging for datalist... i have successfully implemented it but the problem is that he is showing all the page nos at one time instead of that i want to show 10 pages at a time then user goes on the last page then next 10 pages should show...
View 3 Replies
Feb 19, 2010
I have One site in which i have to show products using datalist and use of paging is must i have created the same but its not very effective i want the paging same as [URL]
View 4 Replies
Mar 26, 2010
I need to be able to Page in my Datalist. As you can see from the code below I'm using a SqlDataReader to populate my Datalist.
[Code]....
View 5 Replies
Oct 19, 2010
Am trying to use sorting and paging using a Asp.net DataList Control.....I found a Tutorial at asp.net website, but not able to understand that. I found other two links ,which exactly is of my need...but the only thing is that , it is in VB...[URL]
But Am working with C# I wanna Use Sorting & Paging For this
[Code]...
[Code]...
View 3 Replies