Every dialog box template specifies a combination of style values that define the appearance and features of the dialog box. The style values can be window styles, such as WS_POPUP and WS_SYSMENU, and dialog box styles, such as DS_MODALFRAME. The number and type of styles for a template depends on the type and purpose of the dialog box.
Windows passes all window styles given in the template to the CreateWindowEx function when creating the dialog box. Windows may pass one or more extended styles depending on the given dialog box styles. For example, when the template specifies DS_MODALFRAME, Windows uses WS_EX_DLGMODALFRAME when creating the dialog box. When the template specifies DS_SYSMODAL, Windows uses WS_EX_TOPMOST. All other dialog box styles affect how Windows manages the dialog box.
Most dialog boxes are pop-up windows that have a System menu and a title bar. Therefore, the typical template specifies the WS_POPUP, WS_SYSMENU, and WS_CAPTION styles. The template also specifies a border style: WS_BORDER for modeless dialog boxes, and DS_MODALFRAME for modal dialog boxes. A template may specify a window type other than pop-up (such as WS_OVERLAPPED) if it creates a customized window instead of a dialog box.
Windows always displays a modal dialog box regardless of whether the WS_VISIBLE style is given. When the template for a modeless dialog box specifies the WS_VISIBLE style, Windows automatically displays the dialog box when it is created. Otherwise, the application is responsible for displaying the dialog box by using the ShowWindow function.
The template can specify the DS_SETFOREGROUND style to force Windows to bring the dialog box to the foreground. This is especially useful for modal dialog boxes that require immediate attention from the user regardless of whether the owner window is the foreground window.
Using the DS_ABSALIGN style, Windows interprets dialog box measurements as screen coordinates; using the DS_SETFONT style, Windows uses a given font, instead of the system font, to draw text in the dialog box client area and in the controls in the dialog box; the DS_NOIDLEMSG style prevents a modal dialog box from sending WM_ENTERIDLE messages to the owner window. These styles are described in more detail in later topics.
The DS_LOCALEDIT style does not apply to Win32-based applications.
Dialog boxes with the DS_SYSMODAL style receive the WS_EX_TOPMOST window style but no other special properties or styles; this means the user still has access to other windows on the desktop even though a DS_SYSMODAL dialog box may be displayed.