Compartilhar via


PageLayout.ListItem propriedade

Obtém o objeto SPListItem no qual se baseia essa classe PageLayout .

Namespace:  Microsoft.SharePoint.Publishing
Assembly:  Microsoft.SharePoint.Publishing (em Microsoft.SharePoint.Publishing.dll)

Sintaxe

'Declaração
Public ReadOnly Property ListItem As SPListItem
    Get
'Uso
Dim instance As PageLayout
Dim value As SPListItem

value = instance.ListItem
public SPListItem ListItem { get; }

Valor de propriedade

Tipo: Microsoft.SharePoint.SPListItem
O objeto SPListItem base, na qual se baseia essa classe.

Comentários

O valor de ListItem é inicializado quando uma instância de PageLayout é criada e não pode ser modificada.

Dica

O usuário deve ter permissão para exibir itens de lista nesta lista para recuperar inicialmente a listagem e obter qualquer um dos seus valores de propriedade.

Essa propriedade é útil para acessar as propriedades adicionais de SPListItem e SPListItem.File e os métodos que não foram quebrados pela classe PageLayout .

Exemplos

Antes de compilar e executar esse exemplo, verifique se o objeto de SPListItem um item de lista para um layout de página que reside na Galeria de páginas mestras no site de nível superior.

Este exemplo assume que a Galeria de páginas mestras que contém o objeto SPListItem requer aprovação de conteúdo.

Não use essa propriedade para acessar campos arbitrários da SPListItem. ListItem aplica-se somente os seguintes campos:

  • AnonymousCacheProfile()

  • AuthenticatedCacheProfile()

  • Author()

  • ContentTypeId()

  • Created()

  • FSObjType()

  • FileDirRef()

  • FileLeafRef()

  • FileRef()

  • Id()

  • MasterPageDescription()

  • PublishingAssociatedContentType()

  • PublishingAssociatedVariations()

  • PublishingPreviewImage()

  • ScopeId()

  • Title()

Se houver a necessidade de acessar outros campos, use SPQuery para criar uma nova instância de SPListItem para uso com outros campos.

using PageLayout = Microsoft.SharePoint.Publishing.PageLayout;
using SPListItem = Microsoft.SharePoint.SPListItem;
using SPFile = Microsoft.SharePoint.SPFile;

namespace Microsoft.SDK.SharePointServer.Samples
{
    public static class PageLayoutCodeSamples
    {
        // This method sets some properties on a PageLayout object,
        // saves the new values, and publishes the PageLayout.
        public static void SetPageLayoutPropertiesAndApprove(SPListItem layoutListItem)
        {
            // Replace these variable values and input
            // parameters with your own values.
            // New PageLayout.Title value
            string newTitle = "your Title";
            // New PageLayout.Description value
            string newDescription = "your Description";
            // The comment to set when the layout is checked in,
            // published, and approved.
            string checkInComment = "your comments";
            // Validate the input parameters.
            if (null == layoutListItem)
            {
                throw new System.ArgumentNullException("layoutListItem");
            }

            // Get the PageLayout wrapper for the SPListItem
            // that is passed in.
            PageLayout pageLayout = new PageLayout(layoutListItem);

            // Check out the PageLayout if it is not checked out yet.
            if (pageLayout.ListItem.File.CheckOutStatus == 
              SPFile.SPCheckOutStatus.None)
            {
                pageLayout.ListItem.File.CheckOut();
            }

            // Set and save some properties on the PageLayout.
            pageLayout.Title = newTitle;
            pageLayout.Description = newDescription;
            pageLayout.Update();

            // Publish the PageLayout and Approve it so that the
            // updated values are available on the published Web site.
            pageLayout.ListItem.File.CheckIn(checkInComment);
            SPFile layoutFile = pageLayout.ListItem.File;
            layoutFile.Publish(checkInComment);
            layoutFile.Approve(checkInComment);

        }
    }
}
Imports PageLayout = Microsoft.SharePoint.Publishing.PageLayout
Imports SPListItem = Microsoft.SharePoint.SPListItem
Imports SPFile = Microsoft.SharePoint.SPFile

Namespace Microsoft.SDK.SharePointServer.Samples
    Public NotInheritable Class PageLayoutCodeSamples
        ' This method sets some properties on a PageLayout object,
        ' saves the new values, and publishes the PageLayout.
        Private Sub New()
        End Sub
        Public Shared Sub SetPageLayoutPropertiesAndApprove(ByVal layoutListItem As SPListItem)
            ' Replace these variable values and input
            ' parameters with your own values.
            ' New PageLayout.Title value
            Dim newTitle As String = "your Title"
            ' New PageLayout.Description value
            Dim newDescription As String = "your Description"
            ' The comment to set when the layout is checked in,
            ' published, and approved.
            Dim checkInComment As String = "your comments"
            ' Validate the input parameters.
            If Nothing Is layoutListItem Then
                Throw New System.ArgumentNullException("layoutListItem")
            End If

            ' Get the PageLayout wrapper for the SPListItem
            ' that is passed in.
            Dim pageLayout As New PageLayout(layoutListItem)

            ' Check out the PageLayout if it is not checked out yet.
            If pageLayout.ListItem.File.CheckOutStatus = SPFile.SPCheckOutStatus.None Then
                pageLayout.ListItem.File.CheckOut()
            End If

            ' Set and save some properties on the PageLayout.
            pageLayout.Title = newTitle
            pageLayout.Description = newDescription
            pageLayout.Update()

            ' Publish the PageLayout and Approve it so that the
            ' updated values are available on the published Web site.
            pageLayout.ListItem.File.CheckIn(checkInComment)
            Dim layoutFile As SPFile = pageLayout.ListItem.File
            layoutFile.Publish(checkInComment)
            layoutFile.Approve(checkInComment)

        End Sub
    End Class
End Namespace

Ver também

Referência

PageLayout classe

PageLayout membros

Microsoft.SharePoint.Publishing namespace

PageLayout