次の方法で共有


画像とテキスト リスト (コレクション スナップ) のテンプレート (HTML)

[ この記事は、Windows ランタイム アプリを作成する Windows 8.x および Windows Phone 8.x 開発者を対象としています。Windows 10 向けの開発を行っている場合は、「最新のドキュメント」をご覧ください]

アイコン、大きい太字の見出し、小さい文字の小見出し、説明のテキストで構成される、スナップされたビュー用の項目を定義します。 このテンプレートは、リスト レイアウトの ListView と共に使います。これ以外のテンプレートについては、「グリッド レイアウト用の項目テンプレート」と「リスト レイアウト用の項目テンプレート」をご覧ください。

テンプレートを使うには

テンプレートを使うには、HTML と CSS スタイルをプロジェクトにコピーします。HTML には、テンプレートと共に使うように設計された ListView があります。HTML をコピーしてから、ListView コントロールの itemDataSource をアプリのデータ ソースに設定し、データと連携を取ることができるようにテンプレートの data-win-bind 属性を更新します。

テンプレートを正常に機能させるためには、ListViewwin-selectionstylefilled クラスを割り当てます。

HTML

<!-- Item template -->
<div id="imageTextListCollectionSnapTemplate" 
     data-win-control="WinJS.Binding.Template">
  <div class="imageTextListCollectionSnap">
    <img class="imageTextListCollectionSnapImage" 
         data-win-bind="src: icon"/>
    <div class="imageTextListCollectionSnapText">
      <div class="imageTextListCollectionSnapTextTitle" 
           data-win-bind="innerText: largeText"></div>
      <h6 class="imageTextListCollectionSnapTextDescription" 
          data-win-bind="innerText: smallText"></h6>
    </div>
  </div>
</div>

<!-- ListView -->
<div id="imageTextListCollectionSnap" 
    class="win-selectionstylefilled"
    data-win-control="WinJS.UI.ListView"
    data-win-options="{ itemDataSource: list.dataSource, 
        itemTemplate: select('#imageTextListCollectionSnapTemplate'), 
        layout: { type: WinJS.UI.ListLayout } }">
</div>

CSS

/* overall list dimensions */
#imageTextListCollectionSnap {
    margin-left: 110px;
    width: 323px; /* +31 px to account for margins applied by ListView */
    height: 640px;
}

/*-------------------------------------------------------------------------------------------*/
/* imageTextList-collectionSnap - used in app template collection page snap view*/
/*-------------------------------------------------------------------------------------------*/

/* style the background color of the filled-selection style items */
.win-selectionstylefilled :not(.win-footprint).win-container {
    background-color: transparent;
}

.win-selectionstylefilled .win-container.win-swipe:hover {
    background-color: transparent;
}

/* margins between items */
#imageTextListCollectionSnap .win-container {
    margin-top: 0px;
    margin-bottom: 0px;
}

    /* hide the hover outline for edge-to-edge items */
    #imageTextListCollectionSnap .win-container:hover {
        outline: none;
    }

/* individual item dimensions */
.imageTextListCollectionSnap {
    display: -ms-grid;
    width: 282px;
    height: 70px;
    padding: 5px;
    overflow: hidden;
}

    /* image */
    .imageTextListCollectionSnap img.imageTextListCollectionSnapImage {
        -ms-grid-column: 1;
        margin: 5px;
        width: 60px;
        height: 60px;
    }

    .imageTextListCollectionSnap .imageTextListCollectionSnapText {
        margin: 5px;
        -ms-grid-column: 2;
    }

        /* Text line 1 */
        .imageTextListCollectionSnap .imageTextListCollectionSnapText .imageTextListCollectionSnapTextTitle {
            width: 190px;
            height: 40px;
            overflow: hidden;
        }

        /* Text line 2 */
        .imageTextListCollectionSnap .imageTextListCollectionSnapText .imageTextListCollectionSnapTextDescription {
            overflow: hidden;
        }

/* style the focus visual for edge-to-edge items */
#imageTextListCollectionSnap .win-focusedoutline {
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    left: 2px;
    top: 2px;
    z-index: 5;
}

関連トピック

グリッド レイアウト用の項目テンプレート

リスト レイアウト用の項目テンプレート