Freigeben über


Exemplarische Vorgehensweise: Anpassen einer mobilen Listenansichtsseite

Letzte Änderung: Mittwoch, 2. Februar 2011

Gilt für: SharePoint Foundation 2010

In dieser exemplarischen Vorgehensweise wird das Anpassen einer mobilen Listenansichtsseite durch das Implementieren eines benutzerdefinierten RenderingTemplate-Steuerelements gezeigt. Im Beispiel wird das Anpassen des Textabschnitts (Inhalts) der Seite gezeigt. Eine Übersicht über das Anpassen eines Abschnitts in einem mobilen Formular oder einer Listenansichtsseite finden Sie unter Vorgehensweise: Anpassen mobiler Listenansichts- und Formularseiten.

Wie in System zum Rendern mobiler Seiten beschrieben, wird der Textbereich einer Listenansichtsseite durch eine Kette von Aufrufen gerendert, die mit dem Aufruf eines RenderingTemplate-Objekts namens Mobile_ListentypID_View_Contents beendet wird, wobei ListentypID entweder die ID einer Listendefinition oder eines SPListTemplateType-Werts ist. Falls kein RenderingTemplate-Objekt mit dieser ID vorhanden ist, wird das RenderingTemplate-Objekt mit der ID Mobile_Default_View_Contents verwendet.

In Microsoft SharePoint Foundation ist kein RenderingTemplate-Klassenobjekt mit der ID Mobile_Announcements_View_Contents (oder Mobile_104_View_Contents, was sich auf denselben Listentyp bezieht) vorhanden. In dieser exemplarischen Vorgehensweise erstellen Sie ein Objekt, mit dem ein Gruß über der Ankündigungsliste hinzugefügt wird.

Verfahren

So passen Sie den Inhaltsabschnitt der mobilen Ankündigungsansichtsseite an

  1. Erstellen Sie in Microsoft Visual Studio ein leeres SharePoint-Projekt. Erstellen Sie eine Farmlösung, keine Sandkastenlösung.

  2. Fügen Sie TEMPLATE\ControlTemplates einen zugeordneten SharePoint-Ordner hinzu.

  3. Klicken Sie mit der rechten Maustaste auf den neuen Ordner, und fügen Sie ein SharePoint-Steuerelement hinzu. Legen Sie für die ASCX-Datei einen Namen fest, der sich von den Dateien anderer Lösungsanbieter unterscheidet, wie z. B. ContosoMobileRenderingTemplates.ascx. Die Datei wird von Visual Studio automatisch dem SharePoint-Lösungsmanifest hinzugefügt, und es wird festgelegt, dass die Datei in %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\ControlTemplates bereitgestellt wird.

    TippTipp

    Fügen Sie das Steuerelement nicht durch Rechtsklicken auf Projekt im Projektmappen-Explorer hinzu. Wenn ein Steuerelement auf diese Art und Weise hinzugefügt wird, wird es von Visual Studio in einem Unterordner von TEMPLATE\ControlTemplates abgelegt. Falls es nicht verschoben wird, wird es von Visual Studio in einem entsprechenden Unterordner von %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\ControlTemplates bereitgestellt. Mobile Renderingvorlagen in Unterordern werden nicht geladen.

  4. Löschen Sie die Dateien .ascx.cs und .ascx.designer.cs (oder .ascx.vb und .ascx.designer.vb). Sie werden für dieses Projekt nicht benötigt.

  5. Ersetzen Sie den gesamten Direktivenabschnitt der ASCX-Datei durch das folgende Markup.

    <%@ Register TagPrefix="GroupBoardMobile"   Namespace="Microsoft.SharePoint.Applications.GroupBoard.MobileControls" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
    <%@ Control Language="C#"   %> 
    <%@ Assembly Name="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> 
    <%@ Register TagPrefix="mobile" Namespace="System.Web.UI.MobileControls" Assembly="System.Web.Mobile, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" %> 
    <%@ Register TagPrefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> 
    <%@ Register TagPrefix="SPMobile" Namespace="Microsoft.SharePoint.MobileControls" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> 
    <%@ Register TagPrefix="WPMobile" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
    
  6. Fügen Sie unterhalb der Direktiven ein RenderingTemplate-Objekt hinzu, und legen Sie die ID für dieses Objekt auf den Wert fest, nach dem das SPMobileListContents-Objekt auf der Ansichtsseite sucht: Mobile_104_View_Contents.

    <SharePoint:RenderingTemplate ID="Mobile_104_View_Contents" RunAt="Server" >
    
    </SharePoint:RenderingTemplate>
    
  7. Definieren Sie innerhalb des RenderingTemplate-Elements ein Template-Element mit einem untergeordneten Label-Steuerelement. Legen Sie das Text-Attribut der Bezeichnung wie im folgenden Code gezeigt fest:

    <Template>
        <SPMobile:SPMobileControlContainer RunAt="Server">
          <SPMobile:SPMobileComponent RunAt="Server" 
             TemplateName="MobileViewPicker" />
          <SPMobile:SPMobileComponent RunAt="Server" 
             TemplateName="MobileDefaultSeparator" />
        </SPMobile:SPMobileControlContainer>
        <mobile:Label RunAt="Server" 
          Text="Hello SharePoint Mobile User!"/>
        <SPMobile:SPMobileListItemIterator RunAt="Server" 
           ListItemSeparatorTemplateName="MobileListItemSeparator" />
    </Template>
    
  8. Wählen Sie im Menü Erstellen die Option Lösung bereitstellen aus. Dadurch wird die ASCX-Datei automatisch gespeichert und in %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATES\ControlTemplates bereitgestellt. Die Webanwendung wird wiederverwendet, sodass alle ASCX-Dateien in diesem Ordner erneut geladen werden.

  9. Wechseln Sie mit dem Gerät oder Emulator zur Liste Ankündigungen. Über der Liste sollte ein Gruß wie im nachfolgenden Screenshot angezeigt werden.

Angepasster Textkörperbereich in mobiler Listenansicht

Siehe auch

Aufgaben

Vorgehensweise: Anpassen mobiler Listenansichts- und Formularseiten

Konzepte

Layout und Paginierung von mobilen Seiten

System zum Rendern mobiler Seiten

Weitere Ressourcen

Anleitungen und exemplarische Vorgehensweisen für die mobile Entwicklung