次の方法で共有


Table、TableRow、TableCell の各 Web サーバー コントロールの概要

更新 : 2007 年 11 月

Table Web サーバー コントロールを使用すると、サーバー コードでプログラムできるテーブルを ASP.NET ページに作成できます。TableRow Web サーバー コントロールおよび TableCell Web サーバー コントロールは、Table コントロールの内容を表示するために使用します。

このトピックの内容は次のとおりです。

  • 背景

  • コード例

  • クラス リファレンス

背景

テーブルは、表形式情報を表示するだけでなく、Web ページの情報の書式を整えるためにも使用します。ASP.NET ページでテーブルを作成する方法は、次のとおりです。

  • HTML テーブル。内容を実行時に追加したり変更したりしない静的なテーブルを作成する場合は、HTML テーブルを使用し、Table コントロールは使用しません。

  • HtmlTable コントロール。これは、runat=server 属性を追加することによって HTML サーバー コントロールに変換された table HTML 要素です。サーバー コードでこのコントロールをプログラミングできます。HTML サーバー コントロールの詳細については、「ASP.NET Web サーバー コントロールの概要」を参照してください。

  • Table これは、他の Web コントロールと一貫性のあるオブジェクト モデルを使用して、テーブルの作成および操作 (行やセルの追加など) を行う Web コントロールです。

通常、Table Web サーバー コントロールは、実行時にコードでテーブルに行やセル (列) を追加する場合に使用します。定義済みの行や列から成る静的テーブルとしてそれを使用することもできますが、その場合は、HTML table 要素を使用する方が簡単です。

Table Web サーバー コントロールは、型が定義されたプロパティを備え、他の Web サーバー コントロールに適合するオブジェクト モデルを提供するため、HtmlTable コントロールよりも簡単にプログラミングできます (このモデルは、TableTableRowTableCell の各コントロールにも適合します)。

Table Web サーバー コントロールとほかのリスト Web Server コントロールの比較

Table Web サーバー コントロールで実現できる機能には、リスト Web サーバー コントロール (具体的には、RepeaterDataList、および GridView などのコントロール) でも実現できるものがあります。これらの 3 つのコントロールは、すべて HTML テーブルとして表示されるか、HTML テーブルとして表示するためのオプションを備えています。

リスト コントロールと Table コントロールの違いは、次のとおりです。

  • リスト コントロールは、データに連結されます。リスト コントロールはデータ ソース専用ですが、Table コントロールの場合は、データ バインドであるかどうかにかかわらず、HTML テキストとコントロールのあらゆる組み合わせを表示できます。

  • リスト コントロールは、テンプレート を使用して要素のレイアウトを指定します。Table コントロールは TableCell 子コントロールをサポートしており、このコントロールには HTML タグの td 要素に情報を記述する場合と同様に情報を追加できます。

Table Web サーバー コントロールのオブジェクト モデル

Table コントロールは、TableRow コントロールの親コントロールとして動作します。テーブルは、TableRow オブジェクトのコレクションである Rows という名前のプロパティをサポートします。このコレクション内の項目を追加したり削除したりすることによって、テーブルの行を指定します。TableRow コントロールは、TableCell オブジェクトを含む、Cells という名前のコレクションをサポートします。

テーブルに表示する内容は、TableCell コントロールに追加されます。セルには Text プロパティがあり、任意の HTML テキストを設定できます。また、コントロールをセルの Controls コレクションに追加することで、セルにコントロールを表示することもできます。

親の Table コントロールは、FontBackColorForeColor などの各プロパティをサポートし、テーブル全体の表示形式を制御します。これらのプロパティは、TableRow コントロールと TableCell コントロールでもサポートされています。これらのプロパティを使用して、親テーブルの表示形式をオーバーライドし、各行および各セルの表示形式を指定できます。

コントロールへのデータの連結

Table コントロールは、それ自体としてはデータ バインドではありませんが、データベースのデータを表示するために使用できます。すべての Web サーバー コントロールの場合と同様に、Table コントロールでも、任意のプロパティをデータ ソースにバインドできます。ただし、Table コントロールは、データを直接表示するためのプロパティをサポートしません。その代わり、通常はテーブルに TableCell コントロールを追加します。その後、各 Text コントロールの TableCell プロパティをデータにバインドするか、または Label コントロールや Literal コントロールなどのデータ バインド コントロールをセルに追加できます。

ページのトップへ

コード例

方法 : Web フォーム ページに Table Web サーバー コントロールを追加する (Visual Studio)

方法 : Table Web サーバー コントロールに行およびセルを動的に追加する

ページのトップへ

クラス リファレンス

TableTableCellTableRow の各コントロールに関連するクラスの一覧を次の表に示します。

メンバ

説明

Table

Table コントロールのメイン クラスです。

TableCell

TableCell コントロールのメイン クラスです。

TableCellCollection

Table コントロールの行を構成する、TableHeaderCell オブジェクトと TableCell オブジェクトのコレクションをカプセル化します。

TableFooterRow

Table コントロールのフッター行を表します。

TableHeaderCell

Table コントロールの見出しセルを表します。

TableHeaderRow

Table コントロールの見出し行を表します。

TableHeaderScope

表のヘッダー セルを表すクラスの HTML scope 属性を表します。

TableItemStyle

TableRow または TableCell として表示されるコントロールの要素に対するスタイル プロパティを表します。

TableRow

TableRow コントロールのメイン クラスです。

TableRowCollection

Table コントロールの単一行を表す TableRow オブジェクトのコレクションをカプセル化します。

TableRowSection

Table コントロール内で TableRow オブジェクトを配置する場所を指定します。

TableSectionStyle

Table コントロールのセクションのスタイルを表します。

TableStyle

Table コントロールのスタイルを表します。

ページのトップへ

参照

参照

HtmlTable

HtmlTableRow

HtmlTableCell