Timer クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
非同期または同期の Web ページのポストバックを定義された間隔で実行します。
public ref class Timer : System::Web::UI::Control, System::Web::UI::IPostBackEventHandler, System::Web::UI::IScriptControl
[System.Drawing.ToolboxBitmap(typeof(EmbeddedResourceFinder), "System.Web.Resources.Timer.bmp")]
public class Timer : System.Web.UI.Control, System.Web.UI.IPostBackEventHandler, System.Web.UI.IScriptControl
[<System.Drawing.ToolboxBitmap(typeof(EmbeddedResourceFinder), "System.Web.Resources.Timer.bmp")>]
type Timer = class
inherit Control
interface IPostBackEventHandler
interface IScriptControl
Public Class Timer
Inherits Control
Implements IPostBackEventHandler, IScriptControl
- 継承
- 属性
- 実装
例
次の例は、 UpdatePanel ランダムに生成された株価と株価が生成された時刻を表示するコントロールを示しています。 コントロールは Timer 、コントロール内のコンテンツを UpdatePanel 10 秒ごとに更新します。
Note
この例では、タイマー間隔が 10 秒に設定されているため、この例を実行するときに、結果が表示されるまで長い時間待つ必要はありません。 各タイマー間隔によってポストバックが発生し、ネットワーク トラフィックが発生するため、運用アプリケーションでは、アプリケーションにとってまだ実用的な最も長い時間に間隔を設定する必要があります。
<%@ Page Language="C#" AutoEventWireup="true" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Timer Example Page</title>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
OriginalTime.Text = DateTime.Now.ToLongTimeString();
}
protected void Timer1_Tick(object sender, EventArgs e)
{
StockPrice.Text = GetStockPrice();
TimeOfPrice.Text = DateTime.Now.ToLongTimeString();
}
private string GetStockPrice()
{
double randomStockPrice = 50 + new Random().NextDouble();
return randomStockPrice.ToString("C");
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:Timer ID="Timer1" OnTick="Timer1_Tick" runat="server" Interval="10000" />
<asp:UpdatePanel ID="StockPricePanel" runat="server" UpdateMode="Conditional">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Timer1" />
</Triggers>
<ContentTemplate>
Stock price is <asp:Label id="StockPrice" runat="server"></asp:Label><BR />
as of <asp:Label id="TimeOfPrice" runat="server"></asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
<div>
Page originally created at <asp:Label ID="OriginalTime" runat="server"></asp:Label>
</div>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="true" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Timer Example Page</title>
<script runat="server">
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
OriginalTime.Text = DateTime.Now.ToLongTimeString()
End Sub
Protected Sub Timer1_Tick(ByVal sender As Object, ByVal e As EventArgs)
StockPrice.Text = GetStockPrice()
TimeOfPrice.Text = DateTime.Now.ToLongTimeString()
End Sub
Private Function GetStockPrice() As String
Dim randomStockPrice As Double = 50 + New Random().NextDouble()
Return randomStockPrice.ToString("C")
End Function
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<asp:Timer ID="Timer1" OnTick="Timer1_Tick" runat="server" Interval="10000" />
<asp:UpdatePanel ID="StockPricePanel" runat="server" UpdateMode="Conditional">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Timer1" />
</Triggers>
<ContentTemplate>
Stock price is <asp:Label id="StockPrice" runat="server"></asp:Label><BR />
as of <asp:Label id="TimeOfPrice" runat="server"></asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
<div>
Page originally created at <asp:Label ID="OriginalTime" runat="server"></asp:Label>
</div>
</form>
</body>
</html>
注釈
このトピックの内容:
はじめに
Timerコントロールを使用すると、指定した間隔でポストバックを実行できます。 コントロールをコントロールの Timer トリガー UpdatePanel として使用すると、非同期の UpdatePanel 部分ページ更新を使用してコントロールが更新されます。 コントロールを使用Timerするには、ScriptManagerWeb ページに オブジェクトを含める必要があります。
コントロールを Timer 使用してコントロールを更新するには、 UpdatePanel コントロール内にタイマーを UpdatePanel 含める必要があります。 または、タイマーをコントロールの外部に UpdatePanel 配置し、タイマーをトリガーとして設定することもできます。
コントロールを Web ページに含 Timer め、コントロールのトリガーとして設定しないことで、完全な Web ページの完全ポストバックを UpdatePanel 開始することもできます。
タイマー間隔が経過したときにサーバー コードを実行するには、イベントのイベント ハンドラー Tick を作成します。 イベント ハンドラーには、コントロールの動作を動的に調整するコードを Timer 含めることができます。
ポストバックの Interval 頻度を指定するには、 プロパティを設定します。 プロパティを Enabled 設定して、 のオンとオフを Timer 切り替えます。
Note
コントロールが Timer Web サーバーにポストバックするタイミングの精度は、ブラウザーで実行されている ECMAScript (JavaScript) window.setTimeout
関数の精度によって異なります。
プロパティは Interval ミリ秒単位で定義されます。 次のポストバックが Interval 開始される前に、少なくとも 1 つの非同期ポストバックを完了できる値に プロパティを設定する必要があります。 コントロールがコントロールの Timer 外部にある UpdatePanel 場合、コントロールの内容 UpdatePanel が更新されている間、タイマーは実行され続けます。 以前のポストバックの処理中に新しいポストバックが開始された場合、最初のポストバックは取り消されます。 既定値は 60,000 ミリ秒 (60 秒) です。
Note
プロパティに Timer 小さな値を持つコントロールを Interval 追加すると、Web サーバーとの間で大量のトラフィックが生成される可能性があります。 コントロールを Timer 使用して、必要な頻度でのみコンテンツを更新します。
宣言構文
<asp:Timer
Enabled="True|False"
EnableTheming="True|False"
EnableViewState="True|False"
ID="string"
Interval="integer"
OnDataBinding="DataBinding event handler"
OnDisposed="Disposed event handler"
OnInit="Init event handler"
OnLoad="Load event handler"
OnPreRender="PreRender event handler"
OnTick="Tick event handler"
OnUnload="Unload handler"
runat="server"
SkinID="string"
Visible="True|False"
/>
コンストラクター
Timer() |
Timer クラスの新しいインスタンスを初期化します。 |
プロパティ
Adapter |
コントロール用のブラウザー固有のアダプターを取得します。 (継承元 Control) |
AppRelativeTemplateSourceDirectory |
このコントロールが含まれている Page オブジェクトまたは UserControl オブジェクトのアプリケーション相対の仮想ディレクトリを取得または設定します。 (継承元 Control) |
BindingContainer |
このコントロールのデータ バインディングを格納しているコントロールを取得します。 (継承元 Control) |
ChildControlsCreated |
サーバー コントロールの子コントロールが作成されたかどうかを示す値を取得します。 (継承元 Control) |
ClientID |
ASP.NET によって生成される HTML マークアップのコントロール ID を取得します。 (継承元 Control) |
ClientIDMode |
ClientID プロパティの値を生成するために使用されるアルゴリズムを取得または設定します。 (継承元 Control) |
ClientIDSeparator |
ClientID プロパティで使用される区切り記号を表す文字値を取得します。 (継承元 Control) |
Context |
現在の Web 要求に対するサーバー コントロールに関連付けられている HttpContext オブジェクトを取得します。 (継承元 Control) |
Controls |
UI 階層内の指定されたサーバー コントロールの子コントロールを表す ControlCollection オブジェクトを取得します。 (継承元 Control) |
DataItemContainer |
名前付けコンテナーが IDataItemContainer を実装している場合、名前付けコンテナーへの参照を取得します。 (継承元 Control) |
DataKeysContainer |
名前付けコンテナーが IDataKeysControl を実装している場合、名前付けコンテナーへの参照を取得します。 (継承元 Control) |
DesignMode |
コントロールがデザイン サーフェイスで使用されているかどうかを示す値を取得します。 (継承元 Control) |
Enabled |
Timer コントロールが、Interval プロパティで指定されたミリ秒単位の時間後にサーバーへのポストバックを開始するかどうかを示す値を取得または設定します。 |
EnableTheming |
テーマがこのコントロールに適用されるかどうかを示す値を取得または設定します。 (継承元 Control) |
EnableViewState |
要求元クライアントに対して、サーバー コントロールがそのビュー状態と、そこに含まれる任意の子のコントロールのビュー状態を保持するかどうかを示す値を取得または設定します。 (継承元 Control) |
Events |
コントロールのイベント ハンドラー デリゲートのリストを取得します。 このプロパティは読み取り専用です。 (継承元 Control) |
HasChildViewState |
現在のサーバー コントロールの子コントロールが、保存されたビューステートの設定を持っているかどうかを示す値を取得します。 (継承元 Control) |
ID |
サーバー コントロールに割り当てられたプログラム ID を取得または設定します。 (継承元 Control) |
IdSeparator |
コントロール ID を区別するために使用する文字を取得します。 (継承元 Control) |
Interval |
ポストバックが開始されるまでのミリ秒単位の待機時間を取得または設定します。 |
IsChildControlStateCleared |
このコントロールに含まれているコントロールに、コントロールの状態が設定されているかどうかを示す値を取得します。 (継承元 Control) |
IsTrackingViewState |
サーバー コントロールがビューステートの変更を保存しているかどうかを示す値を取得します。 (継承元 Control) |
IsViewStateEnabled |
このコントロールでビューステートが有効かどうかを示す値を取得します。 (継承元 Control) |
LoadViewStateByID |
コントロールがインデックスではなく ID によりビューステートの読み込みを行うかどうかを示す値を取得します。 (継承元 Control) |
NamingContainer |
同じ ID プロパティ値を持つ複数のサーバー コントロールを区別するための一意の名前空間を作成する、サーバー コントロールの名前付けコンテナーへの参照を取得します。 (継承元 Control) |
Page |
サーバー コントロールを含んでいる Page インスタンスへの参照を取得します。 (継承元 Control) |
Parent |
ページ コントロールの階層構造における、サーバー コントロールの親コントロールへの参照を取得します。 (継承元 Control) |
RenderingCompatibility |
レンダリングされる HTML と互換性がある ASP.NET のバージョンを表す値を取得します。 (継承元 Control) |
Site |
デザイン サーフェイスに現在のコントロールを表示するときに、このコントロールをホストするコンテナーに関する情報を取得します。 (継承元 Control) |
SkinID |
コントロールに適用するスキンを取得または設定します。 (継承元 Control) |
TemplateControl |
このコントロールを格納しているテンプレートへの参照を取得または設定します。 (継承元 Control) |
TemplateSourceDirectory |
現在のサーバー コントロールを格納している Page または UserControl の仮想ディレクトリを取得します。 (継承元 Control) |
UniqueID |
階層構造で修飾されたサーバー コントロールの一意の ID を取得します。 (継承元 Control) |
ValidateRequestMode |
ブラウザーからのクライアント入力の安全性をコントロールで調べるかどうかを示す値を取得または設定します。 (継承元 Control) |
ViewState |
同一のページに対する複数の要求にわたって、サーバー コントロールのビューステートを保存し、復元できるようにする状態情報のディクショナリを取得します。 (継承元 Control) |
ViewStateIgnoresCase |
StateBag オブジェクトが大文字小文字を区別しないかどうかを示す値を取得します。 (継承元 Control) |
ViewStateMode |
このコントロールのビューステート モードを取得または設定します。 (継承元 Control) |
Visible |
メソッド
AddedControl(Control, Int32) |
子コントロールが Control オブジェクトの Controls コレクションに追加された後に呼び出されます。 (継承元 Control) |
AddParsedSubObject(Object) |
XML または HTML のいずれかの要素が解析されたことをサーバー コントロールに通知し、サーバー コントロールの ControlCollection オブジェクトに要素を追加します。 (継承元 Control) |
ApplyStyleSheetSkin(Page) |
ページのスタイル シートに定義されたスタイル プロパティをコントロールに適用します。 (継承元 Control) |
BeginRenderTracing(TextWriter, Object) |
レンダリング データのデザイン時のトレースを開始します。 (継承元 Control) |
BuildProfileTree(String, Boolean) |
ページのトレースが有効な場合、サーバー コントロールに関する情報を収集し、これを表示するために Trace プロパティに渡します。 (継承元 Control) |
ClearCachedClientID() |
キャッシュされた ClientID 値を |
ClearChildControlState() |
サーバー コントロールのすべての子コントロールについて、コントロールの状態情報を削除します。 (継承元 Control) |
ClearChildState() |
サーバー コントロールのすべての子コントロールのビューステート情報およびコントロールの状態情報を削除します。 (継承元 Control) |
ClearChildViewState() |
サーバー コントロールのすべての子コントロールのビューステート情報を削除します。 (継承元 Control) |
ClearEffectiveClientIDMode() |
現在のコントロール インスタンスおよびすべての子コントロールの ClientIDMode プロパティを Inherit に設定します。 (継承元 Control) |
CreateChildControls() |
ASP.NET ページ フレームワークによって呼び出され、ポストバックまたはレンダリングの準備として、合成ベースの実装を使うサーバー コントロールに対し、それらのコントロールに含まれる子コントロールを作成するように通知します。 (継承元 Control) |
CreateControlCollection() |
サーバー コントロールの子コントロール (リテラルとサーバーの両方) を保持する新しい ControlCollection オブジェクトを作成します。 (継承元 Control) |
DataBind() |
呼び出されたサーバー コントロールとそのすべての子コントロールにデータ ソースをバインドします。 (継承元 Control) |
DataBind(Boolean) |
DataBinding イベントを発生させるオプションを指定して、呼び出されたサーバー コントロールとそのすべての子コントロールにデータ ソースをバインドします。 (継承元 Control) |
DataBindChildren() |
データ ソースをサーバー コントロールの子コントロールにバインドします。 (継承元 Control) |
Dispose() |
サーバー コントロールが、メモリから解放される前に最終的なクリーンアップを実行できるようにします。 (継承元 Control) |
EndRenderTracing(TextWriter, Object) |
レンダリング データのデザイン時のトレースを終了します。 (継承元 Control) |
EnsureChildControls() |
サーバー コントロールに子コントロールが含まれているかどうかを確認します。 含まれていない場合、子コントロールを作成します。 (継承元 Control) |
EnsureID() |
ID が割り当てられていないコントロールの ID を作成します。 (継承元 Control) |
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
FindControl(String) |
指定した |
FindControl(String, Int32) |
指定した |
Focus() |
コントロールに入力フォーカスを設定します。 (継承元 Control) |
GetDesignModeState() |
コントロールのデザイン時データを取得します。 (継承元 Control) |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetRouteUrl(Object) |
ルート パラメーターのセットに対応する URL を取得します。 (継承元 Control) |
GetRouteUrl(RouteValueDictionary) |
ルート パラメーターのセットに対応する URL を取得します。 (継承元 Control) |
GetRouteUrl(String, Object) |
ルート パラメーターのセットおよびルート名に対応する URL を取得します。 (継承元 Control) |
GetRouteUrl(String, RouteValueDictionary) |
ルート パラメーターのセットおよびルート名に対応する URL を取得します。 (継承元 Control) |
GetScriptDescriptors() |
Timer オブジェクトから、ブラウザーにタイマー ロジックを実装するクライアント コンポーネントに渡されるプロパティを取得します。 |
GetScriptReferences() |
Timer コントロールのクライアント スクリプトを取得します。 |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
GetUniqueIDRelativeTo(Control) |
指定されたコントロールの UniqueID プロパティのプレフィックス部分を返します。 (継承元 Control) |
HasControls() |
サーバー コントロールに子コントロールが含まれているかどうかを確認します。 (継承元 Control) |
HasEvents() |
コントロールまたは子コントロールに対してイベントが登録されているかどうかを示す値を返します。 (継承元 Control) |
IsLiteralContent() |
サーバー コントロールがリテラルな内容だけを保持しているかどうかを決定します。 (継承元 Control) |
LoadControlState(Object) |
SaveControlState() メソッドによって保存された前回のページ要求からコントロールの状態情報を復元します。 (継承元 Control) |
LoadViewState(Object) |
SaveViewState() メソッドによって保存された前回のページ要求からビューステート情報を復元します。 (継承元 Control) |
MapPathSecure(String) |
仮想パス (絶対パスまたは相対パス) の割り当て先の物理パスを取得します。 (継承元 Control) |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
OnBubbleEvent(Object, EventArgs) |
サーバー コントロールのイベントをページの UI サーバー コントロールの階層構造に渡すかどうかを決定します。 (継承元 Control) |
OnDataBinding(EventArgs) |
DataBinding イベントを発生させます。 (継承元 Control) |
OnInit(EventArgs) |
Init イベントを発生させます。 (継承元 Control) |
OnLoad(EventArgs) |
Load イベントを発生させます。 (継承元 Control) |
OnPreRender(EventArgs) | |
OnTick(EventArgs) | |
OnUnload(EventArgs) |
Unload イベントを発生させます。 (継承元 Control) |
OpenFile(String) |
ファイルの読み込みで使用される Stream を取得します。 (継承元 Control) |
RaiseBubbleEvent(Object, EventArgs) |
イベントのソースおよびその情報をコントロールの親に割り当てます。 (継承元 Control) |
RaisePostBackEvent(String) |
ページがサーバーにポストされるときに Timer コントロールが Tick イベントを発生させることができるようにします。 |
RemovedControl(Control) |
Control オブジェクトの Controls コレクションから子コントロールが削除された後に呼び出されます。 (継承元 Control) |
Render(HtmlTextWriter) |
指定された Timer オブジェクトを使用して、ブラウザーに HtmlTextWriter コントロールのコンテンツをレンダリングします。 |
RenderChildren(HtmlTextWriter) |
提供された HtmlTextWriter オブジェクトに対してサーバー コントロールの子のコンテンツを出力すると、クライアントで表示されるコンテンツが記述されます。 (継承元 Control) |
RenderControl(HtmlTextWriter) |
指定の HtmlTextWriter オブジェクトにサーバー コントロールの内容を出力し、トレースが有効である場合はコントロールに関するトレース情報を保存します。 (継承元 Control) |
RenderControl(HtmlTextWriter, ControlAdapter) |
指定した ControlAdapter オブジェクトを使用して、指定した HtmlTextWriter オブジェクトにサーバー コントロールの内容を出力します。 (継承元 Control) |
ResolveAdapter() |
指定したコントロールを表示するコントロール アダプターを取得します。 (継承元 Control) |
ResolveClientUrl(String) |
ブラウザーで使用できる URL を取得します。 (継承元 Control) |
ResolveUrl(String) |
要求側クライアントで使用できる URL に変換します。 (継承元 Control) |
SaveControlState() |
ページがサーバーにポスト バックされた時間以降に発生したすべてのサーバー コントロール状態の変化を保存します。 (継承元 Control) |
SaveViewState() |
ページがサーバーにポスト バックされた時間以降に発生した、サーバー コントロールのビューステートの変更を保存します。 (継承元 Control) |
SetDesignModeState(IDictionary) |
コントロールのデザイン時データを設定します。 (継承元 Control) |
SetRenderMethodDelegate(RenderMethod) |
サーバー コントロールとその内容を親コントロールに表示するイベント ハンドラー デリゲートを割り当てます。 (継承元 Control) |
SetTraceData(Object, Object) |
トレース データ キーとトレース データ値を使用して、レンダリング データのデザイン時トレースのトレース データを設定します。 (継承元 Control) |
SetTraceData(Object, Object, Object) |
トレースされたオブジェクト、トレース データ キー、およびトレース データ値を使用して、レンダリング データのデザイン時トレースのトレース データを設定します。 (継承元 Control) |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
TrackViewState() |
サーバー コントロールにビューステートの変更を追跡させ、サーバー コントロールの StateBag オブジェクトに変更を格納できるようにします。 このオブジェクトは、ViewState プロパティによってアクセスできます。 (継承元 Control) |
イベント
DataBinding |
サーバー コントロールがデータ ソースに連結すると発生します。 (継承元 Control) |
Disposed |
サーバー コントロールがメモリから解放されると発生します。これは、ASP.NET ページが要求されている場合のサーバー コントロールの有効期間における最終段階です。 (継承元 Control) |
Init |
サーバー コントロールが初期化されると発生します。これは、サーバー コントロールの有効期間における最初の手順です。 (継承元 Control) |
Load |
サーバー コントロールが Page オブジェクトに読み込まれると発生します。 (継承元 Control) |
PreRender |
Control オブジェクトの読み込み後、表示を開始する前に発生します。 (継承元 Control) |
Tick |
Interval プロパティで指定されたミリ秒単位の時間が経過したときに発生し、ページがサーバーにポストされます。 |
Unload |
サーバー コントロールがメモリからアンロードされると発生します。 (継承元 Control) |
明示的なインターフェイスの実装
拡張メソッド
FindDataSourceControl(Control) |
指定されたコントロールのデータ コントロールに関連付けられているデータ ソースを返します。 |
FindFieldTemplate(Control, String) |
指定されたコントロールの名前付けコンテナー内にある、指定された列のフィールド テンプレートを返します。 |
FindMetaTable(Control) |
格納しているデータ コントロールのメタテーブル オブジェクトを返します。 |
適用対象
.NET