Timer Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Выполняет асинхронную или синхронную обратную передачу веб-страницы через указанный интервал.
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 секунд.
Примечание
В этом примере интервал таймера равен 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 элемент управления обновляется с помощью асинхронного частичного обновления страницы. Для использования элемента управления необходимо включить ScriptManager объект на веб-страницу Timer .
Элемент управления используется Timer для обновления UpdatePanel элемента управления путем включения таймера в элемент управления UpdatePanel . Кроме того, можно поместить таймер за пределы UpdatePanel управления и установить его в качестве триггера.
Вы также можете инициировать полную обратную передачу полной веб-страницы, включив Timer элемент управления в веб-страницу и не устанавливая его в качестве триггера для элемента UpdatePanel управления.
Вы можете запустить код сервера по истечении интервала таймера, создав обработчик событий для Tick события. В обработчик событий можно включить код, который динамически корректирует поведение Timer элемента управления.
Задайте свойство , Interval чтобы указать, как часто будут выполняться обратные передачи. Enabled Задайте свойство для включения или выключенияTimer.
Примечание
Точность отправки Timer элемента управления обратно на веб-сервер зависит от точности функции ECMAScript (JavaScript), window.setTimeout
которая выполняется в браузере.
Свойство Interval определяется в миллисекундах. Необходимо задать для Interval свойства значение, которое позволяет выполнить по крайней мере одну асинхронную обратную передачу до начала следующей обратной передачи. Timer Когда элемент управления находится за пределами UpdatePanel элемента управления, таймер продолжает работать, пока обновляется содержимое UpdatePanel элемента управления. Если при обработке предыдущей обратной передачи инициируется новая обратная связь, первая обратная связь будет отменена. Значение по умолчанию — 60 000 миллисекунд (60 секунд).
Примечание
Timer Добавление элемента управления с небольшим значением в свойстве Interval может привести к значительному трафику на веб-сервер и с него. 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 |
Получает идентификатор элемента управления для HTML-разметки, созданной ASP.NET. (Унаследовано от Control) |
ClientIDMode |
Возвращает или задает алгоритм, используемый для создания значения свойства ClientID. (Унаследовано от Control) |
ClientIDSeparator |
Возвращает значение символа разделителя, используемого в свойстве ClientID. (Унаследовано от Control) |
Context |
Возвращает объект HttpContext, связанный с серверным элементом управления для текущего веб-запроса. (Унаследовано от Control) |
Controls |
Возвращает объект ControlCollection, который представляет дочерние элементы управления для указанного элемента управления сервера в иерархии пользовательского интерфейса. (Унаследовано от Control) |
DataItemContainer |
Возвращает ссылку на контейнер именования, если контейнер именования реализует класс IDataItemContainer. (Унаследовано от Control) |
DataKeysContainer |
Возвращает ссылку на контейнер именования, если контейнер именования реализует класс IDataKeysControl. (Унаследовано от Control) |
DesignMode |
Возвращает значение, указывающее, используется ли элемент управления на поверхности разработки. (Унаследовано от Control) |
Enabled |
Возвращает или задает значение, указывающее, инициирует ли элемент управления Timer обратную передачу серверу по прошествии времени в миллисекундах, указанного в свойстве Interval. |
EnableTheming |
Возвращает или задает значение, указывающее, применяются ли темы к этому элементу управления. (Унаследовано от Control) |
EnableViewState |
Получает или задает значение, указывающее запрашивающему клиенту, сохраняет ли серверный элемент управления состояние представления и состояние представления своих дочерних элементов управления. (Унаследовано от Control) |
Events |
Возвращает список делегатов обработчиков событий элемента управления. Это свойство доступно только для чтения. (Унаследовано от Control) |
HasChildViewState |
Возвращает значение, которое указывает на наличие сохраненных параметров состояния представления у дочернего элемента серверного элемента управления. (Унаследовано от Control) |
ID |
Возвращает или задает программный идентификатор, назначенный серверному элементу управления. (Унаследовано от Control) |
IdSeparator |
Возвращает символ, используемый для разделения идентификаторов элементов управления. (Унаследовано от Control) |
Interval |
Возвращает или задает время ожидания до начала инициации обратной передачи в миллисекундах. |
IsChildControlStateCleared |
Возвращает значение, указывающее, имеют ли элементы управления в этом элементе управления состояние элемента управления. (Унаследовано от Control) |
IsTrackingViewState |
Возвращает значение, отражающее сохранение изменений в состояние представления серверного элемента управления. (Унаследовано от Control) |
IsViewStateEnabled |
Возвращает значение, указывающее, используется ли состояние представления для этого элемента управления. (Унаследовано от Control) |
LoadViewStateByID |
Возвращает значение, указывающее, участвует ли элемент управления в загрузке состояния представления ID вместо индекса. (Унаследовано от Control) |
NamingContainer |
Возвращает ссылку на контейнер именования элемента управления, создающий уникальное пространство имен для различения серверных элементов управления с одинаковыми значениями свойства ID. (Унаследовано от Control) |
Page |
Возвращает ссылку на экземпляр Page, содержащий серверный элемент управления. (Унаследовано от Control) |
Parent |
Возвращает ссылку на родительский элемент управления серверного элемента управления в иерархии элементов управления страницы. (Унаследовано от Control) |
RenderingCompatibility |
Возвращает значение, которое задает версию ASP.NET, с которой совместим созданный HTML. (Унаследовано от Control) |
Site |
Возвращает сведения о контейнере, который содержит текущий элемент управления при визуализации на поверхности конструктора. (Унаследовано от Control) |
SkinID |
Возвращает или задает обложку, применяемую к элементу управления. (Унаследовано от Control) |
TemplateControl |
Возвращает или задает ссылку на шаблон, содержащий этот элемент управления. (Унаследовано от Control) |
TemplateSourceDirectory |
Возвращает виртуальный каталог Page или UserControl, содержащий текущий серверный элемент управления. (Унаследовано от Control) |
UniqueID |
Возвращает уникальный идентификатор серверного элемента управления в иерархии. (Унаследовано от Control) |
ValidateRequestMode |
Возвращает или задает значение, указывающее, проверяет ли элемент управления полученный из браузера клиентский ввод на предмет потенциально опасных значений. (Унаследовано от Control) |
ViewState |
Возвращает словарь сведений о состоянии, позволяющих сохранять и восстанавливать состояние представления серверного элемента управления при нескольких запросах одной и той же страницы. (Унаследовано от Control) |
ViewStateIgnoresCase |
Возвращает значение, указывающее, является ли объект StateBag нечувствительным к регистру. (Унаследовано от Control) |
ViewStateMode |
Возвращает или задает режим состояния представления данного элемента управления. (Унаследовано от Control) |
Visible |
Переопределяет свойство Visible класса Control, чтобы не допустить установки этого значения. |
Методы
AddedControl(Control, Int32) |
Вызывается после добавления дочернего элемента управления в коллекцию Controls объекта Control. (Унаследовано от 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() |
Создает идентификатор для элементов управления, которые не имеют назначенного идентификатора. (Унаследовано от 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) |
Определяет, передается ли событие серверного элемента управления вверх по иерархии серверных элементов управления пользовательского интерфейса страницы. (Унаследовано от 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) |
Вызывается после удаления дочернего элемента управления из коллекции Controls объекта Control. (Унаследовано от Control) |
Render(HtmlTextWriter) |
Отображает содержимое элемента управления Timer в браузер, используя указанный объект HtmlTextWriter. |
RenderChildren(HtmlTextWriter) |
Выводит содержимое дочерних элементов серверного элемента управления в предоставленный объект HtmlTextWriter, который записывает это содержимое для подготовки к просмотру на клиенте. (Унаследовано от Control) |
RenderControl(HtmlTextWriter) |
Выводит содержимое серверного элемента управления в указанный объект HtmlTextWriter и сохраняет сведения о трассировке элемента управления, если трассировка включена. (Унаследовано от Control) |
RenderControl(HtmlTextWriter, ControlAdapter) |
Выводит серверный элемент управления в указанный объект HtmlTextWriter, используя указанный объект ControlAdapter. (Унаследовано от 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) |
Возвращает объект метатаблицы для контейнерного элемента управления данными. |