Microsoft Design-time Controls Overview

October 28, 1996

This overview is provided in question-and-answer format.

Questions:

What is a Web design-time control?
What can be authored with a Web design-time control?
Which editors will support Web design-time controls?
Can third parties build Web design-time controls?
How can I build a Web design-time control?
How do Web design-time controls relate to FrontPage WebBots?
Do Web design-time controls replace standard ActiveX controls?


What is a Web design-time control?

Microsoft is defining a new class of ActiveX controls called Web design-time ActiveX controls. These controls are used exclusively at design time (authoring time) to author Web content. They function just like an embedded wizard that can be continuously edited to modify the text it generates into the Web page. Web design-time controls take advantage of all the rich OLE design-time capabilities -- in-place editing, property sheets, and persistence -- to capture user inputs, thereby extending the capabilities of editors that support Web design-time ActiveX controls.

Unlike an ActiveX control, a Web design-time control is never "alive" at run time. Instead, Web design-time controls persist run-time text that is acted on by downstream text consumers such as browsers and components running on Web servers. A host container can use them extensively to provide easy authoring of Active Server Pages that contain scripting and ActiveX server components.

Web design-time ActiveX controls are standard ActiveX controls that have a special interface that lets them generate text. The text is saved into the file by the editor and processed at run time. The structure and content of the text that is generated is entirely up to the control. The control can generate any text that could have been inserted into the file by a knowledgeable user with a standard text editor. Once the file has been saved, the Web design-time controls are inactive, and only the run-time text is "alive". Web design-time controls participate at design-time as all ActiveX controls do; they can handle their own drawing, accept mouse and keyboard input, and provide context menus and property pages. They provide a rich mechanism for extending the graphical editing environment of an HTML editor.


Lifetime of a Web design-time control

When the file is saved, the Web design-time control is wrapped inside an HTML comment, making it invisible to any downstream processor that respects HTML comments. If the file is an Active Server Page, the Web design-time control is stripped from the file before the file is processed and any HTML is delivered to the browser. In the example below, the Web design-time control is shown as green text, and the run-time text is in black. All content in green will be logically hidden from any HTML browser.

Sample of a Web design-time control in a text file after it has been saved:

<!--METADATA TYPE="DesignerControl" startspan
<OBJECT ID="Billboard1" WIDTH=460 HEIGHT=60
CLASSID="CLSID:CF40D084-10E4-11D0-8712-00A024A7C573">
<PARAM NAME="RuntimeCodeBase" VALUE="code">
<PARAM NAME="ImageCount" VALUE="2">
<PARAM NAME="ImageUrl0" VALUE="media/ad_1.gif">
<PARAM NAME="ImageTrans0" VALUE="1">
<PARAM NAME="ImageUrl1" VALUE="media/ad_2.gif">
<PARAM NAME="ImageTrans1" VALUE="6">
</OBJECT>
-->
<APPLET NAME="Billboard" CODE="DynamicBillBoard" CODEBASE="code"
HEIGHT="60" WIDTH="460" ALT="Billboard">
<PARAM NAME="Delay" VALUE="2000">
<PARAM NAME="billboards" VALUE="2">
<PARAM NAME="Bill0" VALUE="media/ad_1.gif,""">
<PARAM NAME="Bill1" VALUE="media/ad_2.gif,""">
<PARAM NAME="Transitions"VALUE="2,ColumnTransition,FadeTransition">
</APPLET>
<!--METADATA TYPE="DesignerControl" endspan-->

UpBack to list of questions


What can be authored with a Web design-time control?

Web design-time controls can author any text-based solution. Because text (the ultimate standard) is what Web design-time controls generate into the Web page, they can target any downstream processor that consumes text. Examples of downstream text processors are HTML browsers, Active Server Pages in Microsoft Internet Information Server version 3.0, and template processors like Cold Fusion. The range of uses for Web design-time controls is wide. A Web design-time control can be used to author:

UpBack to list of questions


Which editors will support Web design-time controls?

Web design-time controls will be supported by all Microsoft HTML editors. These controls were introduced first in Visual InterDev™ (previously code-named "Internet Studio"), but they will be hosted by Microsoft FrontPage in 1997 and "Trident". We expect Web design-time support from a significant number of third-party HTML editors. This technology allows third-party developers to dynamically extend their editors and leverage their investment in ActiveX technology, thereby creating a market for developers of Web design-time controls.

UpBack to list of questions


Can third parties build Web design-time controls?

Yes. Microsoft has held design previews with independent software vendors, and published the Web Design-time Control SDK for building these controls. The SDK also includes the information necessary to build tools that host Web design-time controls. We expect hundreds of Web design-time controls to be available from third-party software vendors over time, providing a rich set of components that can be used to seamlessly extend the capabilities of any editor that supports these controls.

UpBack to list of questions


How can I build a Web design-time control?

The specs in the Web Design-time Control SDK (and also included on this Web site) provide background information on Web design-time controls and some preliminary information on writing controls. Web design-time controls can be written using any development tool that can create ActiveX controls, including:

We are working with third-party development tools to provide integrated support for building Web design-time ActiveX controls. Building Web design-time controls consists first of creating a standard ActiveX control and then implementing the IActiveDesigner interface.

UpBack to list of questions


How do Web design-time controls relate to FrontPage WebBots?

Web design-time control technology is a COM-based component solution that will be supported by a wide number of HTML editors, including the Microsoft FrontPage, Visual InterDev (previously code-named "Internet Studio"), and "Trident" editors. The FrontPage WebBots technology, on the other hand, is specifically designed to work with FrontPage.

Comparison points Web design-time
control
FrontPage
WebBot
Requires FrontPage server extensions No Yes
Requires FrontPage editor No Yes
Based on COM - easy to build, share, host Yes No

UpBack to list of questions


Do Web design-time controls replace standard ActiveX controls?

No. Web design-time controls differ from standard ActiveX controls in that they do not contain a binary run-time component, so Microsoft has decided to name Web design-time controls as a separate category of ActiveX controls. Unlike ActiveX controls, a Web design-time control is never "alive" at run time. Instead, Web design-time controls persist run-time text that is acted on by downstream text consumers like browsers and components running on Web servers. Web design-time controls will co-exist successfully with standard ActiveX controls.

UpBack to list of questions © 1997 Microsoft Corporation. All rights reserved. Legal Notices.