Compartilhar via


SPListItemCollectionPosition class

Oferece suporte à paginação através de conjuntos de dados, armazenando o estado que é necessário para obter a próxima página de dados um modo de exibição específico de uma lista.

Inheritance hierarchy

System.Object
  Microsoft.SharePoint.SPListItemCollectionPosition

Namespace:  Microsoft.SharePoint
Assembly:  Microsoft.SharePoint (in Microsoft.SharePoint.dll)

Syntax

'Declaração
Public Class SPListItemCollectionPosition
'Uso
Dim instance As SPListItemCollectionPosition
public class SPListItemCollectionPosition

Examples

O exemplo de código a seguir usa as propriedades de ListItemCollectionPosition da classe SPListItemCollection e a classe SPQuery para retornar um objeto SPListItemCollectionPosition que armazena informações sobre onde cada página de dados termina com a coleção de itens e que exibe os títulos dos itens em grupos de 10 linhas. O exemplo supõe que a lista é uma biblioteca de documentos ou se as pastas estiverem ativadas na lista.

Este exemplo requer diretivas de using (Imports no Microsoft Visual Basic) para os namespaces Microsoft.SharePoint e Microsoft.SharePoint.Utilities .

Dim site As SPWeb = SPControl.GetContextWeb(Context)
Dim list As SPList = site.Lists("Announcements")

Dim query As New SPQuery()
query.RowLimit = 10
query.Query = "<OrderBy Override=\"TRUE\">" & _
    "<FieldRef Name=\"FileLeafRef\" /></OrderBy>";


Dim i As Integer = 1

Do

    Response.Write("<BR>Page: " & i & "<BR>")

    Dim listItems As SPListItemCollection = list.GetItems(query)
    Dim listItem As SPListItem

    For Each listItem In  listItems

        Response.Write
            (SPEncode.HtmlEncode(listItem("Title").ToString()) & _
            "<BR>")

    Next listItem

    query.ListItemCollectionPosition = _
        listItems.ListItemCollectionPosition

    i += 1

Loop While  Not (query.ListItemCollectionPosition Is Nothing) 
SPWeb oWebsite = SPContext.Current.Web;
SPList oList = oWebsite.Lists["Announcements"];

SPQuery oQuery = new SPQuery();
oQuery.RowLimit = 10;
oQuery.Query = "<OrderBy Override=\"TRUE\">" + 
    "<FieldRef Name=\"FileLeafRef\" /></OrderBy>";

int intIndex = 1;

do
{
    Response.Write("<BR>Page: " + intIndex + "<BR>");
    SPListItemCollection collListItems = oList.GetItems(oQuery);

    foreach (SPListItem oListItem in collListItems)
    {
        Response.Write(SPEncode.HtmlEncode(oListItem["Title"].ToString()) +
        "<BR>");
    }

    oQuery.ListItemCollectionPosition =
        collListItems.ListItemCollectionPosition;
    intIndex++;
} while (oQuery.ListItemCollectionPosition != null);

Dica

Para obter informações sobre como usar consultas Language-Integrated Query (LINQ) para recuperar itens de lista em SharePoint Foundation, consulte Managing Data with LINQ to SharePoint.

Thread safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Ver também

Referência

SPListItemCollectionPosition members

Microsoft.SharePoint namespace