# DLGTEMPL Sample: Creates Dialog Templates Dynamically

The DLGTEMPL sample shows how to create a dialog template dynamically and use the template with CDialog::InitModalIndirect. The sample displays a dialog box for selecting the height, width, and other attributes of a button, static text, and multiline edit control, then displays the resulting dialog box using templates in memory.

The bulk of the code for dynamically creating a dialog is found in the CMyDialogTemplate::DemoIt member function. DLGTEMPL does not prevent you from entering values that lay one control over another, nor does it prevent you from positioning a control beyond the boundary of the dialog. You can experiment with DLGTEMPL to see the effects of resizing and overlaying controls.

For more information on dialog templates, see the class CDialog and the Windows structures DLGTEMPLATE and DLGITEMTEMPLATE in the Platform SDK.

Security Note
This sample code is provided to illustrate a concept and should not be used in applications or Web sites, as it may not illustrate the safest coding practices.

# Building and Running the Sample

#### To build and run the DLGTEMPL sample

1. Open the solution dlgtempl.sln.

2. On the Build menu, click Build.

3. On the Debug menu, click Start Without Debugging.

When you run DLGTEMPL, it displays a dialog box in which you select Button, Edit, or Text. Enter the desired values for height, width, and X and Y coordinates for placement on the resulting dialog box, and a caption to be displayed. Click Show Dialog to display a dynamically created dialog box based on the values you enter. Press ESCAPE to close the dialog box.