次の方法で共有


Literal Web サーバー コントロールの概要

更新 : 2007 年 11 月

Literal Web サーバー コントロールは、ページ上のその他のコンテンツのコンテナとして使用できます。

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

  • シナリオ

  • 背景

  • コード例

  • クラス リファレンス

シナリオ

Literal コントロールは、ページにコンテンツを動的に追加する場合に最もよく使用されます。

ページのトップへ

背景

Literal コントロールは、コンテンツをページに追加するためのいくつかの方法の 1 つです。静的コンテンツについては、コンテナを使用せずに、HTML としてマークアップを直接ページに追加できます。ただし、コンテンツを動的に追加する場合は、なんらかのコンテナに追加する必要があります。一般的なコンテナとしては、LabelLiteralPanel、および PlaceHolder の各コントロールがあります。

Literal コントロールは HTML 要素をテキストに追加しません。この点で、Literal コントロールは Label コントロールとは異なります (Label コントロールは span 要素を表示します)。したがって、Literal コントロールは、スタイル属性 (位置属性など) を一切サポートしません。ただし、Literal コントロールを使用すると、コンテンツをエンコードするかどうかを指定できます。

Panel コントロールと PlaceHolder コントロールは、div 要素として表示されます。したがって、インラインで表示される Label コントロールや Literal コントロールとは異なり、ページ上に独立したブロックが作成されます。

一般に、マークアップを追加せずにページにテキストとコントロールを直接表示する場合は、Literal コントロールを使用します。

リテラル コントロールでのコンテンツのエンコーディング

Literal コントロールは、Mode プロパティをサポートしています。このプロパティは、追加されたマークアップをコントロールがどのように処理するかを指定します。Mode プロパティには次の値を設定できます。

  • Transform. コントロールに追加するマークアップは、要求側のブラウザのプロトコルに対応して変換されます。この設定は、HTML 以外のプロトコルを使用するモバイル デバイスにコンテンツを表示する場合に便利です。

  • PassThrough. コントロールに追加するマークアップは、すべてそのままブラウザに表示されます。

  • Encode. コントロールに追加するマークアップは、HTML エンコーディングをテキスト表現に変換する HtmlEncode メソッドを使用してエンコードされます。たとえば、<b> タグは、&lt;b&gt; と表示されます。エンコーディングは、ブラウザにマークアップを解釈させるのではなく表示させる場合に便利です。また、エンコーディングはセキュリティ面でも有用であり、悪意のあるマークアップがブラウザで実行されるのを防止できます。信頼関係のないソースから取得した文字列を表示する場合には、エンコーディングの使用をお勧めします。詳細については、「方法 : HTML エンコーディングを文字列に適用して Web アプリケーションをスクリプトによる攻略から保護する」を参照してください。

コード例

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

クラス リファレンス

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

メンバ

説明

Literal

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

ページのトップへ

参照

参照

Label Web サーバー コントロールの概要