DIALOG_DPI_CHANGE_BEHAVIORS enumeration

In Per Monitor v2 contexts, dialogs will automatically respond to DPI changes by resizing themselves and re-computing the positions of their child windows (here referred to as re-layouting). This enum works in conjunction with SetDialogDpiChangeBehavior in order to override the default DPI scaling behavior for dialogs.

This does not affect DPI scaling behavior for the child windows of dialogs (beyond re-layouting), which is controlled by DIALOG_CONTROL_DPI_CHANGE_BEHAVIORS.

Syntax


typedef enum _DIALOG_DPI_CHANGE_BEHAVIORS { 
  DDC_DEFAULT                   = 0x0000,
  DDC_DISABLE_ALL               = 0x0001,
  DDC_DISABLE_RESIZE            = 0x0002,
  DDC_DISABLE_CONTROL_RELAYOUT  = 0x0003
} DIALOG_DPI_CHANGE_BEHAVIORS;

Constants

DDC_DEFAULT

The default behavior of the dialog manager. In response to a DPI change, the dialog manager will re-layout each control, update the font on each control, resize the dialog, and update the dialog's own font.

DDC_DISABLE_ALL

Prevents the dialog manager from responding to WM_GETDPISCALEDSIZE and WM_DPICHANGED, disabling all default DPI scaling behavior.

DDC_DISABLE_RESIZE

Prevents the dialog manager from resizing the dialog in response to a DPI change.

DDC_DISABLE_CONTROL_RELAYOUT

Prevents the dialog manager from re-layouting all of the dialogue's immediate children HWNDs in response to a DPI change.

Requirements

Minimum supported client

Windows 10, version 1703 [desktop apps only]

Minimum supported server

Windows Server 2016 [desktop apps only]

Header

Winuser.h

See also

SetDialogDpiChangeBehavior
GetDialogDpiChangeBehavior
DIALOG_CONTROL_DPI_CHANGE_BEHAVIORS

 

 

Show: