モバイル フィールドのレンダリングをカスタマイズする
このウォークスルーでは、ユーザー設定の RenderingTemplate を実装して、モバイル ページのフィールドのレンダリングをカスタマイズする方法を説明します。この例では、モバイル表示ページでお知らせリストのアイテムのタイトル フィールドを変更する方法を示します。モバイル ページのフィールドをカスタマイズする手順の概要については、「[方法] モバイル ページでフィールド レンダリングをカスタマイズする」を参照してください。
「モバイル ページのレンダリング システム」に説明されているように、Microsoft.SharePoint.MobileControls.SPMobileListFieldSelector テンプレートのセレクタ コントロールは、ページ上のコントロールから一連の呼び出しを通じて呼び出されます。
このオブジェクトは、現在のリスト タイプとフィールド (この例では、それぞれお知らせとタイトル) に基づき、モバイル表示ページでフィールドを表示する RenderingTemplate を指定します。
コントロールは、MobileCustomListField_ListTypeID_FieldType_Field という名前の RenderingTemplate を検索します。
ListTypeID は、現在のリストのタイプの ID 番号 (たとえば、105)、または SPListTemplateType 列挙の 1 つの値 (たとえば、Contacts) のどちらかです。FieldType は、フィールドのデータ型です (たとえば Text または Number)。Field は、フィールド名です (たとえば、WorkPhone)。この ID の RenderingTemplate が存在しない場合は、ID が MobileDefaultListField の RenderingTemplate が使用されます。
Windows SharePoint Services 3.0 の出荷時には、ID が MobileCustomListField_Announcements_Text_Title の RenderingTemplate はありません。このウォークスルーでは、お知らせリストのアイテム用のモバイル表示ページで、アイテムの新しいタイトルの代替となるものを作成します。
お知らせアイテムのタイトル フィールドをカスタマイズするには
任意のテキスト エディタを使用して、Local_Drive:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\CONTROLTEMPLATES フォルダに AnnouncementsItemDisplayPageTitleField.ascx という名前のテキスト ファイル (UTF-8) を作成します。
ファイルに次のディレクティブを追加します。
<%@ Control Language="C#" %> <%@ Assembly Name="Microsoft.SharePoint, Version=12.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=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register TagPrefix="SPMobile" Namespace="Microsoft.SharePoint.MobileControls" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Import Namespace="Microsoft.SharePoint" %>
ディレクティブの下に RenderingTemplate を追加し、表示フォームで SPMobileListContents オブジェクトが検索する ID MobileCustomListField_Announcements_Text_Title を指定します。
<SharePoint:RenderingTemplate RunAt="Server" ID="MobileCustomListField_Announcements_Text_Title" > </SharePoint:RenderingTemplate>
RenderingTemplate 要素内で、Label 子コントロールを持つ Template 要素を定義します。ラベルの Text 属性を次のように設定します。
<Template> <mobile:Label Text="Title field in Announcements List" RunAt="Server" /> </Template>
ファイルを保存して閉じます。
コマンド ラインで「iisreset」と入力して、Microsoft インターネット インフォメーション サービス (IIS) をリセットします。
実際のモバイル デバイスではなく、デバイス エミュレータを使用しているコンピュータでは、インターネット一時ファイルの削除が必要になる場合があります。
デバイスまたはエミュレータでお知らせリストに移動し、アイテムをクリックして表示します。新しいタイトルが、次のスクリーンショットのように表示されます。
See Also
タスク
[方法] モバイル ページでフィールド レンダリングをカスタマイズする