Installing AJAX extensions

PowerBuilder uses AJAX (Asynchronous JavaScript and XML) update functionality for Web Forms applications. With ASP.NET AJAX, the page is updated by refreshing individual regions of the page asynchronously.

An asynchronous postback behaves much like a synchronous postback, but performance is enhanced through minimization of the content sent to the server and rendered again in the client browser. The rest of the page remains unchanged, therefore data traffic and page flickering are significantly reduced.

Because PowerBuilder uses the AJAX update feature by default, AJAX extensions are required for Web Forms applications on all development and deployment machines. You can download and install the Microsoft ASP.NET AJAX Extensions version 1.0 from the ASP.NET Web site.

NoteRequired AJAX version Although PowerBuilder .NET Web Forms and .NET Web Service component targets work with .NET Framework 3.5, they do not use the version of AJAX that installs with .NET Framework 3.5. You must install AJAX Extensions version 1.0 (build 61025.0) for these .NET target types.

The AJAX enhancement does not require you to modify your PowerScript code or change the way you work in the PowerBuilder IDE.

How it works

UpdatePanels All container controls (Windows, Tabs, and UserObjects) and DataWindow® controls are wrapped with UpdatePanels. When there is any user interface-related change within a container control or DataWindow control, the portion of the page corresponding to those container controls or the DataWindow control is updated.

The general rule of updating is that when the visual interface in an UpdatePanel changes, the controls wrapped in the UpdatePanel update. When one UpdatePanel nests in another, and the controls in the outer UpdatePanel update, the controls in the inner UpdatePanel also update. The reverse is not true; when a change is made to the controls in an inner UpdatePanel, the controls in the outer UpdatePanel are not rendered again.

You can reduce the areas to be updated in a page by encapsulating objects and controls in Tabs and User Objects. By minimizing the number of objects and controls in a container control, you reduce the number of items that need to be rendered when the UpdatePanel wrapping that container control is updated.

DataWindows The minimum unit of an UpdatePanel is usually a single container control or DataWindow. DataWindows are not container controls because the objects and controls they contain do not inherit from the PowerObject class.

UpdatePanels that wrap DataWindow controls behave in the same way as UpdatePanels for container controls. Master and detail DataWindows are wrapped in separate UpdatePanels. If a master DataWindow is updated by an event such as a button click, only the master DataWindow is updated. When the information in the detail DataWindow is updated by an event in the master DataWindow, only the detail DataWindow updates.