連載 .NETでモバイル・サイト開発を始めよう 第3回 モバイル・コントロール利用時の心得 シグマコンサルティング 菅原 英治2007/05/29 |
|
第1回/第2回では、主にASP.NETによるモバイルWebサイトをデバイス別に対応させる方法について解説した。
今回は、これまでとは一新し、モバイル・コントロールの利用について解説する。モバイル・コントロールの中でも特に、一覧の表示に関するものについて取り上げる。これらのコントロールを取り上げた理由は、筆者が最初に利用した際に特に戸惑いを覚えたからだ。
■4. モバイル・コントロール利用時の心得
それでは、一覧の表示に関するモバイル・コントロールについて解説する。
●4.1. 一覧の表示(GridViewコントロールとListコントロールの違い)
○4.1.1. 一覧表示コントロールについて
一覧を表示するためのモバイル・コントロールとしては、次の2つが存在する。
(1)Listコントロール
(2)ObjectListコントロール
Listコントロールは、単純な一覧を表示するためのコントロールである。基本的には、コントロールに設定したデータを1行ごとに1項目表示する。またテンプレートを利用することにより、複数の項目を表示させることも可能である。
一方、ObjectListコントロールは、Listコントロールより、多機能な一覧コントロールである。このコントロールでは、一覧画面と詳細画面を提供する。これにより、コントロールに設定したデータ1行ごとに複数の項目を利用することが可能である。
この2つのコントロールには、それぞれ対応するWebコントロールが存在する。下の表は、MSDNの「Web コントロールとモバイル コントロールの比較」より、ListとObjectListについて抜粋し、簡単にまとめたものだ。
モバイル・コントロール | Webコントロール | 相違点 |
List | DataList、Repeater | 機能はほとんど同じである。Listコントロールはデバイス別にテンプレートを適用できる。 |
ObjectList | GridView(DataGrid) | 機能はほとんど同じである。ObjectListコントロールはデータのコレクションを表示する複数のビューを提供する。 |
Listコントロール、ObjectListコントロールに対応するWebコントロール |
この表から、ListコントロールとObjectListコントロールのおおよその使い分け方はつかめるだろう。しかしうまくこれらを使いこなすために、具体的な違いについてより深く理解しておきたい。MSDNの「ObjectList コントロールと List コントロールの違い」に、その違いがまとめられている。
下の表は、その内容を筆者なりに解釈し、補足を加えてまとめたものである。なお、「コマンド」とはボタンやリンクによるコントロールの操作のことである。
機能 | Listコントロール | ObjectListコントロール |
データ連結 | 次の3つの方法がある。 (1)DataBindメソッドでバインドする (2)ItemsプロパティのAddメソッドで、データ項目(=MobileListItemオブジェクト)を動的に追加する (3)Webフォーム・ページ側(.aspxファイル側)に<item>タグを記述し、静的に追加する |
必ずデータソース(DataSource)を設定し、DataBindメソッドでバインドしなくてはならない |
複数のプロパティのビュー | 1項目(=1行)に対し、1つのプロパティ(=列)を表示できる。テンプレートを利用することにより、複数のプロパティを表示することも可能である | 1項目(=1行)に対し、複数のプロパティ(=列)を表示できる。複数のプロパティは、その項目の詳細情報として表示される |
複数のコマンド | 1項目(=1行)に対し、1つのコマンドを設定できる | 1項目(=1行)に対し、複数のコマンドを設定できる。複数のコマンドからの選択は、(一覧表示ではなく)項目の詳細情報表示の中で行う |
カスタム改ページ調整およびテンプレート化 | サポートしている | サポートしている |
ListコントロールとObjectListコントロールの違い |
この表の説明だけで、2つのコントロールの違いを理解するのはなかなか難しいだろう。そこで、これらのコントロールを利用する具体的な例を示すことで、理解の助けとしたい。
なお以降では、前回まで作成してきたサンプル・プログラムを拡張していく。そのサンプル・プログラムはこちらからダウンロード可能だ。
INDEX | ||
[連載].NETでモバイル・サイト開発を始めよう | ||
第3回 モバイル・コントロール利用時の心得 | ||
1.一覧表示コントロールについて | ||
2.ObjectListコントロールの利用 | ||
3.Listコントロールの利用 | ||
4.ListコントロールのItemCommandイベントの制御 | ||
「.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用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
|
|