特集:Visual Studio 2008&ASP.NET 3.5

ASP.NETアプリ開発者のための
Visual Studio 2008新機能 Part III

山田祥寛(http://www.wings.msn.to/
2008/03/14
Page1 Page2 Page3 Page4

[4]ListViewコントロールのテンプレートを定義する

 データソースの表示が完了したら、次にデータ表示のためのテンプレート(レイアウト)を定義しておこう。

 ListViewコントロールのテンプレートを定義するには、タスク・メニューから[ListViewの構成]を選択すればよい*2

*2 ウィザードを使わずに、一からテンプレートを自作しても(もちろん)構わない。しかし、多くの場合は定型的なテンプレートを適用しておいて、そこからカスタマイズしていった方が効率的だろう。

図3 [ListViewの構成]ダイアログ
ListViewコントロールのタスク・メニューから[ListViewの構成]を選択して開く。ListViewコントロールで使用するテンプレートを定義できる。

 [ListViewの構成]ダイアログが表示されるので、次の図4の要領で必要最低限の情報を設定しておこう。ダイアログを閉じると、フォーム・デザイナには、設定した内容に基づいてテンプレートの適用イメージ(ランタイム・ビュー)が表示されるはずだ。

図4 テンプレートが適用されたListViewコントロール
[ListViewの構成]ダイアログでの設定内容が反映される。

[5]自動生成されたテンプレートをカスタマイズする

 もっとも、ここでは最低限のテンプレートが生成されているにすぎないので、多くの場合は、ここから用途に合わせたテンプレートの編集を行う必要がある。

 テンプレートを編集するには、ListViewコントロールのタスク・メニューの[現在のビュー]から編集したいテンプレートを選択すればよい。

図5 ListViewコントロールのEditItemTemplateテンプレート
ListViewコントロールのタスク・メニューの[現在のビュー]から編集したいテンプレートを選択して開く。

 選択されたテンプレートがフォーム・デザイナ上に表示されるので、後はこれらテンプレートを適宜編集していくだけだ。

 ListViewコントロールで利用可能なテンプレートは、以下のとおりである。

テンプレート 適用個所
LayoutTemplate リストの外枠
ItemTemplate データ項目
AlternatingItemTemplate データ項目(ItemTemplateと交互に適用)
SelectedItemTemplate データ項目(選択時)
InsertItemTemplate データ項目(挿入行)
EditItemTemplate データ項目(編集時)
EmptyItemTemplate 空の項目(GroupTemplate利用時に使用*a
EmptyDataTemplate データセットが空の場合の表示
ItemSeparatorTemplate データ項目単位の区切り
GroupTemplate グループ*bの外枠
GroupSeparatorTemplate グループ単位の区切り
ListViewコントロールで利用可能なテンプレート
*a 例えば、グループごとのデータ項目数が3で、データ項目の総数が5である場合、最後のグループでは1つデータが不足する。その場合に空の項目部分の表示を決定するのがEmptyItemTemplateテンプレートの役割である。
*b グループとはデータ項目を束ねる単位のこと。これによって、(例えば)データ3個ごとに改行や<tr>タグ、水平線を加えたりといったレイアウトが可能になる。グループに含まれるデータの項目数は、GroupItemCountプロパティで指定できる。

 これらのテンプレートが適用される場所を図示すると次のようになる。

図6 各テンプレートが適用される場所


 INDEX
  Visual Studio 2008&ASP.NET 3.5
  ASP.NETアプリ開発者のためのVisual Studio 2008新機能 Part I
    1.JavaScriptサポートを大幅に強化
    2.外部のJavaScriptライブラリやサービス・メソッドも認識可能
    3.サービス・メソッドを利用する場合/自作ライブラリにもツール・ヒントを表示
    4.機能強化されたJavaScriptのデバッグ機能
 
  ASP.NETアプリ開発者のためのVisual Studio 2008新機能 Part II
    1.CSSサポートもますます使いやすく(1)
    2.CSSサポートもますます使いやすく(2)
    3.マルチターゲッティング機能/分割ビュー
    4.マスタ・ページのネスト機能/エクステンダ・ウィザード
 
  ASP.NETアプリ開発者のためのVisual Studio 2008新機能 Part III
    1.新しいデータアクセス・コントロール − ListViewコントロール −(1)
  2.新しいデータアクセス・コントロール − ListViewコントロール −(2)
    3.より柔軟なページャの配置を可能にする − DataPagerコントロール −
    4.ASP.NETページでLINQ機能を利用する − LinqDataSourceコントロール −
 
  ASP.NETアプリ開発者のためのVisual Studio 2008新機能 Part IV
    1.UpdatePanelコントロールの適用範囲が拡大
    2.ロール・アクセスに対応したアプリケーションサービス・ブリッジ
    3.Webサービス・ブリッジがWCFをサポート


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Insider.NET 記事ランキング

本日 月間