SPMobileListNavigation Class

Specifies the ID of the <RenderingTemplate> that is used when rendering the footer 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.SPMobileListNavigation
              Microsoft.SharePoint.MobileControls.SPMobilePostsListNavigation

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

Syntax

<AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level := AspNetHostingPermissionLevel.Minimal)> _
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel := True)> _
<AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level := AspNetHostingPermissionLevel.Minimal)> _
<SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel := True)> _
Public Class SPMobileListNavigation _
    Inherits SPMobileListTemplateSelector

Dim instance As SPMobileListNavigation
[AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
[AspNetHostingPermissionAttribute(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.Minimal)]
[SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel = true)]
public class SPMobileListNavigation : 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 SPMobileListNavigation 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 will take the following form.

Mobile_ListTemplateID_PageType_Navigation

The "Mobile" is a prefix that indicates that the <RenderingTemplate> is for mobile web sites.

The "Navigation" indicates that <RenderingTemplate> should apply to the footer part of the page.

The PageType is the type of page, such as View or NewForm. It is never HomePage. For the rendering of the footer area of home pages, Windows SharePoint Services 3.0 uses SPMobileWebNavigation.

The ListTemplateID is the integer value of the Type attribute for the Collaborative Application Markup Language (CAML) <ListTemplate Element (List Template)> element or the value of the Name attribute. For example, the Type value for the announcements list template is 104. Hence, the SPMobileListNavigation object for an announcements list view page on a mobile web site is the following.

Mobile_104_View_Navigation

Alternatively, it could be the following.

Mobile_Announcements_View_Navigation

The following excerpt from the MobileDefaultTemplates.ascx file (in C:\\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\CONTROLTEMPLATES) shows the markup that controls the rendering of footers when the page type is DeletePage. Notice that there are specific templates only for the Comments and Posts list types. All other list types use the Mobile_Default_DeletePage_Navigation <RenderingTemplate>.

<SharePoint:RenderingTemplate RunAt="Server" ID="MobileDeleteNavigation">
<Template>
<SPMobile:SPMobileListNavigation RunAt="Server" />
</Template>
</SharePoint:RenderingTemplate>
<SharePoint:RenderingTemplate RunAt="Server" ID="Mobile_Default_DeletePage_Navigation">
<Template>
<SPMobile:SPMobileFormDigest RunAt="Server" />
<SPMobile:SPMobileDeleteNavigation RunAt="Server" Text="<%$Resources:wss, mobile_button_delete_text%>" BreakAfter="false" />
<SPMobile:SPMobileCancelNavigation RunAt="Server" Text="<%$Resources:wss, mobile_button_cancel_text%>" BreakAfter="true"  />
</Template>
</SharePoint:RenderingTemplate>
<SharePoint:RenderingTemplate RunAt="Server" ID="Mobile_Comments_DeletePage_Navigation">
<Template>
<SPMobile:SPMobileFormDigest RunAt="Server" />
<SPMobile:SPMobileCommentsDeleteNavigation RunAt="Server" Text="<%$Resources:wss, mobile_button_delete_text%>" BreakAfter="false" />
<SPMobile:SPMobileCommentsCancelNavigation RunAt="Server" Text="<%$Resources:wss, mobile_button_cancel_text%>" BreakAfter="true"  />
</Template>
</SharePoint:RenderingTemplate>
<SharePoint:RenderingTemplate RunAt="Server" ID="Mobile_Posts_DeletePage_Navigation">
<Template>
<SPMobile:SPMobileFormDigest RunAt="Server" />
<SPMobile:SPMobilePostsDeleteNavigation RunAt="Server" Text="<%$Resources:wss, mobile_button_delete_text%>" BreakAfter="false" />
<SPMobile:SPMobilePostsCancelNavigation RunAt="Server" Text="<%$Resources:wss, mobile_button_cancel_text%>" />
</Template>
</SharePoint:RenderingTemplate> 

Do not change MobileDefaultTemplates.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, you can override the Mobile_Default_PageType_Navigation <RenderingTemplate> with the following method. (For footer rendering on home pages, see SPMobileWebNavigation. For footer rendering on custom page types, see SPMobilePageNavigation.)

Create a custom *.aspx file in the ...\CONTROLTEMPLATES folder that contains a <RenderingTemplate> with the name Mobile_ListTemplateID_PageType_Navigation. Specify the Type or Name of a <ListTemplate Element (List Template)> in place of ListTemplateID, and 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 that differs from those used by Mobile_Default_PageType_Navigation to render the footer. (Otherwise the customization would be pointless.)

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

For more about customizing web page footers for built-in Windows SharePoint Services 3.0 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

SPMobileListNavigation Members

Microsoft.SharePoint.MobileControls Namespace

SPMoblePageNavigation

Other Resources

Mobile Page Rendering System

Walkthrough: Customizing a Mobile List View Page