Paging With SPDataSource (Very Easy)
I give up from SPListItemCollectionPosition and how it works and you have to pay too much attention to last item id and .... even i wrote an article about it you can see it here (paging with splistitemcollectionposition) but not now.
Now i am gonna show you an easy way for paging in very simple steps using SPDataSource
Add Visual Web Part (Contracts) and on code behind add
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
if (gvContracts != null)
{
gvContracts.PagerTemplate = null;
}
}
Add SPGridView
<SharePoint:SPGridView ID="gvContracts" DataSourceID="dsContracts" GridLines="None"
AutoGenerateColumns="false"
AllowPaging="true" PageSize="2" OnPageIndexChanging="gvContracts_PageIndexChanging"
runat="server" ShowHeader="false" OnRowDataBound="gvContracts_RowDataBound"> <PagerStyle CssClass="gvfooter" />
<Columns>
<%# Eval("Title")%>
</Columns>
<PagerSettings Mode="NumericFirstLast" Position="Bottom" />
</SharePoint:SPGridView>
Add SPDataSource
<SharePoint:SPDataSource runat="server" ID="dsContracts" DataSourceMode="List"> <SelectParameters>
<asp:Parameter Name="WebUrl" DefaultValue="/Arabic//TendersAndContracts" />
<asp:Parameter Name="ListName" DefaultValue="Contracts" />
</SelectParameters>
</SharePoint:SPDataSource>
run your application and see
Notes:
you can use it in more complex situations i already did it before.
wothout this line of code ( gvContracts.PagerTemplate = null;)
the pager will not shown.
this sample image show paging for public portal using this paging with complex search
You are welcomed for any question, just drop me comment.