次の方法で共有


UpdateProgress コントロール

UpdateProgress コントロールは、UpdatePanel コントロールでの部分ページ更新に関するステータス情報を提供します。既定のコンテンツおよび UpdateProgress コントロールのレイアウトをカスタマイズできます。部分ページ更新が非常に高速な場合のちらつきを防止するために、UpdateProgress コントロールが表示される前の遅延を指定できます。

UpdateProgress コントロールが正常に機能するためには、web.config ファイルに特定の設定が必要です。このコントロールを使用するときに、サイトに必要な web.config ファイルが存在しない場合、コントロールが表示されるはずのページの [デザイン] ビューにエラーが表示されます。[デザイン] ビューでその状態のコントロールをクリックすると、Microsoft Expression Web のオプションが表示されて、新しい web.config ファイルを作成するか、既存の web.config ファイルを更新するかの選択を求められます。

シナリオ

UpdateProgress コントロールを使用すると、Web ページに部分ページ レンダリング用の 1 つまたは複数の UpdatePanel コントロールが含まれている場合に、より直感的な UI をデザインできます。部分ページ更新が遅い場合は、UpdateProgress コントロールを使用して、更新のステータスに関する情報を視覚的に示すことができます。それぞれ異なる UpdateProgress コントロールに関連付けられている複数の UpdatePanel コントロールをページに含められます。または、1 つの UpdateProgress コントロールを使用し、これをページ上のすべての UpdatePanel コントロールに関連付けることもできます。

背景

UpdateProgress コントロールは DIV 要素をレンダリングします。この <div> 要素は、関連付けられている UpdatePanel コントロールが非同期ポストバックの原因となったかどうかに応じて、表示または非表示になります。初期ページ レンダリングおよび同期ポストバックの場合、UpdateProgress コントロールは表示されません。

UpdateProgress コントロールと UpdatePanel コントロールの関連付け

UpdateProgress コントロールの AssociatedUpdatePanelID プロパティを設定することにより、UpdateProgress コントロールを UpdatePanel コントロールに関連付けます。ポストバック イベントが UpdatePanel コントロールから発生すると、関連付けられている UpdateProgress コントロールがすべて表示されます。UpdateProgress コントロールを特定の UpdatePanel コントロールに関連付けていない場合、UpdateProgress コントロールでは非同期ポストバックの進行状況が表示されます。

UpdatePanel コントロールの ChildrenAsTriggers プロパティを false に設定し、非同期ポストバックがその UpdatePanel コントロール内から発生した場合は、関連付けられている UpdateProgress コントロールが表示されます。

UpdateProgress コントロールのコンテンツの作成

UpdateProgress コントロールによって表示されるメッセージを指定するには、[デザイン ] ビューで、パネルに表示するコンテンツを配置します。たとえば、他の ASP.NET コントロールと HTML コントロールをパネルにドラッグし、パネルにカーソルを置いてそこに直接入力できます。[デザイン] ビューで UpdateProgress コントロールにメッセージを追加した場合は、必要な <ProgressTemplate> タグがコンテンツの前後に自動的に追加されます。[デザイン] ビューではなく [コード] ビューで UpdateProgress コントロールにコンテンツを追加した場合、<ProgressTemplate></ProgressTemplate> タグが存在しなければこれらのタグを手動で追加する必要があります。追加しないとメッセージがレンダリングされません。

コンテンツのレイアウトの指定

DynamicLayout プロパティが true の場合、UpdateProgress コントロールは最初はページの表示領域を占有しません。代わりに、ページが動的に変更されて、UpdateProgress コントロールのコンテンツが必要に応じて表示されます。動的表示をサポートするために、コントロールは、表示スタイル プロパティの初期設定が none になっている DIV 要素としてレンダリングされます。

DynamicLayout プロパティが false の場合、UpdateProgress コントロールは、表示されていない場合でもページの表示領域を占有します。その場合、コントロールの <div> 要素の表示スタイル プロパティは block に設定され、その可視性は最初は hidden に設定されています。

ページへの UpdateProgress コントロールの配置

UpdateProgress コントロールは UpdatePanel コントロールの内部または外部に配置できます。関連付けられている UpdatePanel コントロールが更新されるたびに、非同期ポストバックの結果として UpdateProgress コントロールが表示されます。これは、UpdateProgress コントロールが別の UpdatePanel コントロールの内部にある場合にも該当します。

UpdatePanel コントロールが別の更新パネル内にある場合は、子パネル内からポストバックが発生すると、子パネルに関連付けられている UpdateProgress コントロールがすべて表示されます。親パネルに関連付けられている UpdateProgress コントロールもすべて表示されます。ポストバックが親パネルの直下の子コントロールから発生した場合は、親パネルに関連付けられている UpdateProgress コントロールだけが表示されます。この動作は、ポストバックがトリガーされる方法に関するロジックに従います。

UpdateProgress コントロールの詳細については、MSDN ライブラリの「UpdateProgress コントロールの概要 Cc295383.xtlink_newWindow(ja-jp,Expression.40).png」を参照してください。

すべての UpdateProgress コントロール プロパティの説明については、MSDN ライブラリの「UpdateProgress プロパティ Cc295383.xtlink_newWindow(ja-jp,Expression.40).png」を参照してください。

関連項目

概念

ASP.NET AJAX コントロール