Active Controls (AJAX enabled Controls)
See the Introduction
for a quick overview of the concept behind active controls (AJAX enabled controls).
Most active controls have a property of
a sub-property ClientSide
that provides many properties to customize the controls. The
CallbackClient property of the
TPage class provides many methods to update and alter the client-side content
during a callback request. Active controls is reliant on a collection
For a quick demo of active controls, try the
TActiveButton control. See also the later part of the Currency Converter tutorial for a more in depth example.
Standard Active Controls
represents a click button on a Web page. It can be used to trigger a callback request.
represents a checkbox on a Web page. It can be used to collect two-state user input
and can trigger a callback request.
validates a particular control using a callback request.
adds a date picker that permits the suer to choose a date.
displays a file upload field on a page and uses an iframe to permit handling of the
file upload in a callback.
displays a hidden input field that can be changed upon callback.
represents a hyperlink on a Web page.
represents an image on a Web page.
represents a click button that has an image as the background.
It is can be used to trigger a callback request.
represents a label on a Web page.
The label can be customized via various CSS attributes.
represents a hyperlink that can perform a callback request.
represents a container for a group of TView controls, each of which is container for other controls.
At any time, at most one TView is visible. It's the active counterpart of TMultiView.
represents a container for other controls on a Web page. In HTML,
it is displayed as a <div> element. The panel's contents
can be replaced during a callback request.
generates UI that allows users to interactively specify which page of
data to be displayed in a data-bound control.
represents a radiobutton on a Web page.
It is mainly used in a group from which users make a choice. It can
be used to perform a callback request.
is an EXPERIMENTAL class that displays clickable images that represent a TRadioButtonList.
represents a text input field on a Web page.
It can collect single-line, multi-line or password text input from users.
It can be used to perform a callback request.
Active List Controls
displays a list of checkboxes on a Web page and each checkbox
can trigger a callback request.
displays a dropdown list box that allows users to select a
single option from a few prespecified ones. It can be used
to perform a callback request.
displays a list box that allows single or multiple selection. It can be used
to perform a callback request.
is similar to TActiveCheckBoxList in every aspect except that each
TActiveRadioButtonList displays a group of radiobuttons. Each radio button
can perform a callback request.
Active Data Controls
is used to display or modify a list of data items. It is the
active counterpart to the original TDataList control.
displays data in a tabular format with rows and columns. It is the
active counterpart to the original TDataGrid control.
displays its content defined in templates repeatedly based on the given data.
It is the active counterpart to the original TRepeater control.
Extended Active Controls
extends TActiveTextBox to offer text completion suggestions.
a generic control that can perform callback requests.
triggers a callback request based on HTML DOM events.
represents a label that can be edited by clicked.
triggers a callback request based on time elapsed.
monitors (using a timer) an attribute of an HTML element and triggers a callback request
when the attribute value changes.
TDropContainer & TDraggable represents drag and drop containers.
The former will make its child controls "draggable" while the latter will raise a callback when a draggable
control is dropped on it.
Active Control Abilities
The following table shows the Active Controls that can trigger a
callback event and whether the control will raise a PostBack event
Active Control Basic Infrastructure Classes
The following classes provide the basic infrastructure classes required to
realize the active controls. They can be useful to develop new active controls, but Prado users tipically don't need
to use them.
TActiveControlAdapter customizes the parent TControl class for active control classes.
It tracks changes in the viewstate values of the control and update
differences of the client-side HTML element attributes.
TActiveListControlAdapter allows the adapted list controls to change the selections
on the client-side during a callback request.
TActivePageAdapter process the page life-cycle for callback requests.
TBaseActiveControl class provided additional basic properties common for every
active control. An instance of TBaseActiveControl or its decendent
TBaseActiveCallbackControl is created by TActiveControlAdapter::getBaseActiveControl()
The EnableUpdate property determines wether the active
control is allowed to update the contents of the client-side when the callback
TCallbackResponseAdapter alters the THttpResponse's outputs.
A TCallbackResponseWriter is used instead of the TTextWrite when
createHtmlWriter is called. Each call to createHtmlWriter will create
a new TCallbackResponseWriter. When flushContent() is called each
instance of TCallbackResponseWriter's content is flushed.
The callback response data can be set using the ResponseData property.
Active Control Infrastructure Advanced Classes
The following classes provide advanced properties and events needed to realize the active controls.
A Prado user can use them to customize active controls behaviour and interact directly with the client side during a callback.
methods to manipulate the client-side HTML elements, also includes methods
is used to specify client-side callback request options and client-side event handlers.
provides the parameter passed during the callback request.
allows a common set of callback client-side options to be attached to one or more active controls.