HtmlHost Example 1: Hosting Xdialog Controls


The new {htmlhost} control differs from the {html} control in that it can host Xdialog controls.

The way Xdialog controls are hosted is by adding a 'a5:xdialog' attribute to an html tag, which will cause the Xdialog control to live in the html element: when the html element is visible, the control is shown; when the html element is hidden, the control is hidden; and most importantly, when the html layout changes due to a resize, the Xdialog control moves and resizes itself to the element. In the below example note that color listbox uses the exact same format you would use to define a normal xdialog listbox, but that you can omit the size from the xdialog control since the size is controlled by the html. Note that the div elements that contain a5:xdialog attributes all have width and height defined. This is important to remember, because if you omit a size, chances are good that the xdialog control will be created 0x0 pixels in size.

dim colors as c = a5.Color_Enum()
dim color as c = word(colors,1,crlf())
dim fname as c = "John"
dim lname as c = "Public"

dim html as c = <<%html%
<body id="body">
<td a5:xdialog="[color^#colors]" style="width:1in;height:2in;" ></td>
<td style="width:2in;vertical-align:top;background-color:#ffffff;" >
Firstname <div style="width:100%;height:.2in;" a5:xdialog="[fname]" />
Lastname <div style="width:100%;height:.2in;" a5:xdialog="[lname]" />