Partilhar via


SPMobileListContents Class

Specifies the ID of the <RenderingTemplate> that is used when rendering the main content area of a mobile page or form other than the home page.

Inheritance Hierarchy

System.Object
  System.Web.UI.Control
    System.Web.UI.MobileControls.MobileControl
      Microsoft.SharePoint.MobileControls.SPMobileComponent
        Microsoft.SharePoint.MobileControls.SPMobileTemplateSelector
          Microsoft.SharePoint.MobileControls.SPMobileListTemplateSelector
            Microsoft.SharePoint.MobileControls.SPMobileListContents

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

Syntax

'Declaration
<AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level := AspNetHostingPermissionLevel.Minimal)> _
<AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level := AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class SPMobileListContents _
    Inherits SPMobileListTemplateSelector
'Usage
Dim instance As SPMobileListContents
[AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
public sealed class SPMobileListContents : SPMobileListTemplateSelector

Remarks

For an overview of the role of this class in the page rendering system for mobile devices, see Mobile Page Rendering System.

Do not call SPMobileListContents in your code. It is documented to provide further understanding of how mobile Web pages are rendered and how the rendering can be customized.

The <RenderingTemplate> ID takes the following form.

IntendedListUse_ListTemplateID_PageType_Contents

The placeholders IntendedListUse, ListTemplateID, and PageType are defined in Mobile Page Rendering System.

The "Contents" indicates that <RenderingTemplate> should apply to the main content area part of the page.

Hence, the SPMobileListContents object for an announcements list view page on a mobile Web site is the following.

Mobile_104_View_Contents

Alternatively, it could be the following.

Mobile_Announcements_View_Contents

The following excerpt from the MobileDefaultTemplates.ascx file (in %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\CONTROLTEMPLATES) shows the markup that controls the rendering of main content areas when the page type is View. Notice that there is a specific template for only the Events list type. All other list types use the Mobile_Default_View_Contents <RenderingTemplate>.

<SharePoint:RenderingTemplate RunAt="Server" id="MobileViewContents">
  <Template>
    <SPMobile:SPMobileListContents RunAt="Server" />
  </Template>
</SharePoint:RenderingTemplate>
<SharePoint:RenderingTemplate RunAt="Server" id="Mobile_Default_View_Contents">
  <Template>
    <SPMobile:SPMobileControlContainer RunAt="Server">
      <SPMobile:SPMobileComponent RunAt="Server" TemplateName="MobileViewPicker" />
      <SPMobile:SPMobileComponent RunAt="Server" TemplateName="MobileDefaultSeparator" />
    </SPMobile:SPMobileControlContainer>
    <SPMobile:SPMobileListItemIterator RunAt="Server" ListItemSeparatorTemplateName="MobileListItemSeparator" />
    <SPMobile:SPMobileLabel RunAt="Server" Text="" Weightless="true" />
  </Template>
</SharePoint:RenderingTemplate>
<SharePoint:RenderingTemplate RunAt="Server" id="Mobile_Events_View_Contents">
  <Template>
    <SPMobile:SPMobileControlContainer  RunAt="Server">
      <SPMobile:SPMobileComponent RunAt="Server" TemplateName="MobileViewPicker" />
      <SPMobile:SPMobileComponent RunAt="Server" TemplateName="MobileDefaultSeparator" />
    </SPMobile:SPMobileControlContainer>
    <SPMobile:SPMobileEventsListItemIterator RunAt="Server" ListItemSeparatorTemplateName="MobileListItemSeparator" />
    <SPMobile:SPMobileLabel RunAt="Server" Text="" Weightless="true" />
  </Template>
</SharePoint:RenderingTemplate>
<SharePoint:RenderingTemplate RunAt="Server" id="MobileThumbnailViewContents">
  <Template>
    <SPMobile:SPMobileControlContainer RunAt="Server">
      <SPMobile:SPMobileComponent RunAt="Server" TemplateName="MobileViewPicker" />
      <SPMobile:SPMobileComponent RunAt="Server" TemplateName="MobileDefaultSeparator" />
    </SPMobile:SPMobileControlContainer>
    <SPMobile:SPMobileThumbnailViewListItemIterator RunAt="Server" />
    <SPMobile:SPMobileLabel RunAt="Server" Text="" />
  </Template>
</SharePoint:RenderingTemplate>
<SharePoint:RenderingTemplate RunAt="Server" id="MobileSimpleViewContents">
  <Template>
    <SPMobile:SPMobileComponent RunAt="Server" TemplateName="MobileViewContents" />
  </Template>
</SharePoint:RenderingTemplate>

Do not change MobileDefaultTemplates.ascx or GbwMobileDefaultTemplates.ascx. For any combination of page type (other than the home page or a custom page) and list type that does not already have a <RenderingTemplate> defined in MobileDefaultTemplates.ascx or GbwMobileDefaultTemplates.ascx, you can override the Mobile_Default_PageType_Contents <RenderingTemplate> with the following steps. (For main content area rendering on home pages, see SPMobileWebContents. For main content area rendering on custom page types, see SPMobilePageContents.)

Create a custom .ascx file in the ...\CONTROLTEMPLATES folder that contains a <RenderingTemplate> with the name Mobile_ListTemplateID_PageType_Contents. Specify the Type or Name of a <ListTemplate Element (List Template)> in place of ListTemplateID. Also specify a particular PageType. The latter must be one of the following: "DeletePage", "DispForm", "EditForm", "NewForm", or "View". Your custom <RenderingTemplate> then calls a combination of controls different from those used by Mobile_Default_PageType_Contents to render the main content area. (Otherwise the customization would be pointless.)

The runtime automatically gives preference to your custom <RenderingTemplate> over the Mobile_Default_PageType_Contents <RenderingTemplate> in MobileDefaultTemplates.ascx or GbwMobileDefaultTemplates.ascx.

For more about customizing Web page main content areas for built-in SharePoint Foundation page types other than home pages, see Walkthrough: Customizing a Mobile List View Page.

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.

See Also

Reference

SPMobileListContents Members

Microsoft.SharePoint.MobileControls Namespace

SPMoblePageContents

Other Resources

Mobile Page Rendering System

Walkthrough: Customizing a Mobile List View Page