Widow – Diff between revs 11 and 12

Subversion Repositories:
Rev:
Only display areas with differencesIgnore whitespace
Rev 11 Rev 12
1 using System; 1 using System;
2 using System.Runtime.InteropServices; 2 using System.Runtime.InteropServices;
3 using System.Text; 3 using System.Text;
4   4  
5 namespace Widow 5 namespace Widow
6 { 6 {
7 public static class Natives 7 public static class Natives
8 { 8 {
9 #region Public Events & Delegates 9 #region Public Events & Delegates
10   10  
11 public delegate bool EnumWindowsProc(IntPtr hWnd, IntPtr lParam); 11 public delegate bool EnumWindowsProc(IntPtr hWnd, IntPtr lParam);
12   12  
13 #endregion 13 #endregion
14   14  
15 #region Public Enums, Properties and Fields 15 #region Public Enums, Properties and Fields
16   16  
17 /// <summary> 17 /// <summary>
18 /// Windows Messages 18 /// Windows Messages
19 /// Defined in winuser.h from Windows SDK v6.1 19 /// Defined in winuser.h from Windows SDK v6.1
20 /// Documentation pulled from MSDN. 20 /// Documentation pulled from MSDN.
21 /// </summary> 21 /// </summary>
22 public enum WM : uint 22 public enum WM : uint
23 { 23 {
24 /// <summary> 24 /// <summary>
25 /// The WM_NULL message performs no operation. An application sends the WM_NULL message if it wants to post a message 25 /// The WM_NULL message performs no operation. An application sends the WM_NULL message if it wants to post a message
26 /// that the recipient window will ignore. 26 /// that the recipient window will ignore.
27 /// </summary> 27 /// </summary>
28 NULL = 0x0000, 28 NULL = 0x0000,
29   29  
30 /// <summary> 30 /// <summary>
31 /// The WM_CREATE message is sent when an application requests that a window be created by calling the CreateWindowEx 31 /// The WM_CREATE message is sent when an application requests that a window be created by calling the CreateWindowEx
32 /// or CreateWindow function. (The message is sent before the function returns.) The window procedure of the new window 32 /// or CreateWindow function. (The message is sent before the function returns.) The window procedure of the new window
33 /// receives this message after the window is created, but before the window becomes visible. 33 /// receives this message after the window is created, but before the window becomes visible.
34 /// </summary> 34 /// </summary>
35 CREATE = 0x0001, 35 CREATE = 0x0001,
36   36  
37 /// <summary> 37 /// <summary>
38 /// The WM_DESTROY message is sent when a window is being destroyed. It is sent to the window procedure of the window 38 /// The WM_DESTROY message is sent when a window is being destroyed. It is sent to the window procedure of the window
39 /// being destroyed after the window is removed from the screen. 39 /// being destroyed after the window is removed from the screen.
40 /// This message is sent first to the window being destroyed and then to the child windows (if any) as they are 40 /// This message is sent first to the window being destroyed and then to the child windows (if any) as they are
41 /// destroyed. During the processing of the message, it can be assumed that all child windows still exist. 41 /// destroyed. During the processing of the message, it can be assumed that all child windows still exist.
42 /// /// 42 /// ///
43 /// </summary> 43 /// </summary>
44 DESTROY = 0x0002, 44 DESTROY = 0x0002,
45   45  
46 /// <summary> 46 /// <summary>
47 /// The WM_MOVE message is sent after a window has been moved. 47 /// The WM_MOVE message is sent after a window has been moved.
48 /// </summary> 48 /// </summary>
49 MOVE = 0x0003, 49 MOVE = 0x0003,
50   50  
51 /// <summary> 51 /// <summary>
52 /// The WM_SIZE message is sent to a window after its size has changed. 52 /// The WM_SIZE message is sent to a window after its size has changed.
53 /// </summary> 53 /// </summary>
54 SIZE = 0x0005, 54 SIZE = 0x0005,
55   55  
56 /// <summary> 56 /// <summary>
57 /// The WM_ACTIVATE message is sent to both the window being activated and the window being deactivated. If the windows 57 /// The WM_ACTIVATE message is sent to both the window being activated and the window being deactivated. If the windows
58 /// use the same input queue, the message is sent synchronously, first to the window procedure of the top-level window 58 /// use the same input queue, the message is sent synchronously, first to the window procedure of the top-level window
59 /// being deactivated, then to the window procedure of the top-level window being activated. If the windows use 59 /// being deactivated, then to the window procedure of the top-level window being activated. If the windows use
60 /// different input queues, the message is sent asynchronously, so the window is activated immediately. 60 /// different input queues, the message is sent asynchronously, so the window is activated immediately.
61 /// </summary> 61 /// </summary>
62 ACTIVATE = 0x0006, 62 ACTIVATE = 0x0006,
63   63  
64 /// <summary> 64 /// <summary>
65 /// The WM_SETFOCUS message is sent to a window after it has gained the keyboard focus. 65 /// The WM_SETFOCUS message is sent to a window after it has gained the keyboard focus.
66 /// </summary> 66 /// </summary>
67 SETFOCUS = 0x0007, 67 SETFOCUS = 0x0007,
68   68  
69 /// <summary> 69 /// <summary>
70 /// The WM_KILLFOCUS message is sent to a window immediately before it loses the keyboard focus. 70 /// The WM_KILLFOCUS message is sent to a window immediately before it loses the keyboard focus.
71 /// </summary> 71 /// </summary>
72 KILLFOCUS = 0x0008, 72 KILLFOCUS = 0x0008,
73   73  
74 /// <summary> 74 /// <summary>
75 /// The WM_ENABLE message is sent when an application changes the enabled state of a window. It is sent to the window 75 /// The WM_ENABLE message is sent when an application changes the enabled state of a window. It is sent to the window
76 /// whose enabled state is changing. This message is sent before the EnableWindow function returns, but after the 76 /// whose enabled state is changing. This message is sent before the EnableWindow function returns, but after the
77 /// enabled state (WS_DISABLED style bit) of the window has changed. 77 /// enabled state (WS_DISABLED style bit) of the window has changed.
78 /// </summary> 78 /// </summary>
79 ENABLE = 0x000A, 79 ENABLE = 0x000A,
80   80  
81 /// <summary> 81 /// <summary>
82 /// An application sends the WM_SETREDRAW message to a window to allow changes in that window to be redrawn or to 82 /// An application sends the WM_SETREDRAW message to a window to allow changes in that window to be redrawn or to
83 /// prevent changes in that window from being redrawn. 83 /// prevent changes in that window from being redrawn.
84 /// </summary> 84 /// </summary>
85 SETREDRAW = 0x000B, 85 SETREDRAW = 0x000B,
86   86  
87 /// <summary> 87 /// <summary>
88 /// An application sends a WM_SETTEXT message to set the text of a window. 88 /// An application sends a WM_SETTEXT message to set the text of a window.
89 /// </summary> 89 /// </summary>
90 SETTEXT = 0x000C, 90 SETTEXT = 0x000C,
91   91  
92 /// <summary> 92 /// <summary>
93 /// An application sends a WM_GETTEXT message to copy the text that corresponds to a window into a buffer provided by 93 /// An application sends a WM_GETTEXT message to copy the text that corresponds to a window into a buffer provided by
94 /// the caller. 94 /// the caller.
95 /// </summary> 95 /// </summary>
96 GETTEXT = 0x000D, 96 GETTEXT = 0x000D,
97   97  
98 /// <summary> 98 /// <summary>
99 /// An application sends a WM_GETTEXTLENGTH message to determine the length, in characters, of the text associated with 99 /// An application sends a WM_GETTEXTLENGTH message to determine the length, in characters, of the text associated with
100 /// a window. 100 /// a window.
101 /// </summary> 101 /// </summary>
102 GETTEXTLENGTH = 0x000E, 102 GETTEXTLENGTH = 0x000E,
103   103  
104 /// <summary> 104 /// <summary>
105 /// The WM_PAINT message is sent when the system or another application makes a request to paint a portion of an 105 /// The WM_PAINT message is sent when the system or another application makes a request to paint a portion of an
106 /// application's window. The message is sent when the UpdateWindow or RedrawWindow function is called, or by the 106 /// application's window. The message is sent when the UpdateWindow or RedrawWindow function is called, or by the
107 /// DispatchMessage function when the application obtains a WM_PAINT message by using the GetMessage or PeekMessage 107 /// DispatchMessage function when the application obtains a WM_PAINT message by using the GetMessage or PeekMessage
108 /// function. 108 /// function.
109 /// </summary> 109 /// </summary>
110 PAINT = 0x000F, 110 PAINT = 0x000F,
111   111  
112 /// <summary> 112 /// <summary>
113 /// The WM_CLOSE message is sent as a signal that a window or an application should terminate. 113 /// The WM_CLOSE message is sent as a signal that a window or an application should terminate.
114 /// </summary> 114 /// </summary>
115 CLOSE = 0x0010, 115 CLOSE = 0x0010,
116   116  
117 /// <summary> 117 /// <summary>
118 /// The WM_QUERYENDSESSION message is sent when the user chooses to end the session or when an application calls one of 118 /// The WM_QUERYENDSESSION message is sent when the user chooses to end the session or when an application calls one of
119 /// the system shutdown functions. If any application returns zero, the session is not ended. The system stops sending 119 /// the system shutdown functions. If any application returns zero, the session is not ended. The system stops sending
120 /// WM_QUERYENDSESSION messages as soon as one application returns zero. 120 /// WM_QUERYENDSESSION messages as soon as one application returns zero.
121 /// After processing this message, the system sends the WM_ENDSESSION message with the wParam parameter set to the 121 /// After processing this message, the system sends the WM_ENDSESSION message with the wParam parameter set to the
122 /// results of the WM_QUERYENDSESSION message. 122 /// results of the WM_QUERYENDSESSION message.
123 /// </summary> 123 /// </summary>
124 QUERYENDSESSION = 0x0011, 124 QUERYENDSESSION = 0x0011,
125   125  
126 /// <summary> 126 /// <summary>
127 /// The WM_QUERYOPEN message is sent to an icon when the user requests that the window be restored to its previous size 127 /// The WM_QUERYOPEN message is sent to an icon when the user requests that the window be restored to its previous size
128 /// and position. 128 /// and position.
129 /// </summary> 129 /// </summary>
130 QUERYOPEN = 0x0013, 130 QUERYOPEN = 0x0013,
131   131  
132 /// <summary> 132 /// <summary>
133 /// The WM_ENDSESSION message is sent to an application after the system processes the results of the 133 /// The WM_ENDSESSION message is sent to an application after the system processes the results of the
134 /// WM_QUERYENDSESSION message. The WM_ENDSESSION message informs the application whether the session is ending. 134 /// WM_QUERYENDSESSION message. The WM_ENDSESSION message informs the application whether the session is ending.
135 /// </summary> 135 /// </summary>
136 ENDSESSION = 0x0016, 136 ENDSESSION = 0x0016,
137   137  
138 /// <summary> 138 /// <summary>
139 /// The WM_QUIT message indicates a request to terminate an application and is generated when the application calls the 139 /// The WM_QUIT message indicates a request to terminate an application and is generated when the application calls the
140 /// PostQuitMessage function. It causes the GetMessage function to return zero. 140 /// PostQuitMessage function. It causes the GetMessage function to return zero.
141 /// </summary> 141 /// </summary>
142 QUIT = 0x0012, 142 QUIT = 0x0012,
143   143  
144 /// <summary> 144 /// <summary>
145 /// The WM_ERASEBKGND message is sent when the window background must be erased (for example, when a window is 145 /// The WM_ERASEBKGND message is sent when the window background must be erased (for example, when a window is
146 /// resized). The message is sent to prepare an invalidated portion of a window for painting. 146 /// resized). The message is sent to prepare an invalidated portion of a window for painting.
147 /// </summary> 147 /// </summary>
148 ERASEBKGND = 0x0014, 148 ERASEBKGND = 0x0014,
149   149  
150 /// <summary> 150 /// <summary>
151 /// This message is sent to all top-level windows when a change is made to a system color setting. 151 /// This message is sent to all top-level windows when a change is made to a system color setting.
152 /// </summary> 152 /// </summary>
153 SYSCOLORCHANGE = 0x0015, 153 SYSCOLORCHANGE = 0x0015,
154   154  
155 /// <summary> 155 /// <summary>
156 /// The WM_SHOWWINDOW message is sent to a window when the window is about to be hidden or shown. 156 /// The WM_SHOWWINDOW message is sent to a window when the window is about to be hidden or shown.
157 /// </summary> 157 /// </summary>
158 SHOWWINDOW = 0x0018, 158 SHOWWINDOW = 0x0018,
159   159  
160 /// <summary> 160 /// <summary>
161 /// An application sends the WM_WININICHANGE message to all top-level windows after making a change to the WIN.INI 161 /// An application sends the WM_WININICHANGE message to all top-level windows after making a change to the WIN.INI
162 /// file. The SystemParametersInfo function sends this message after an application uses the function to change a 162 /// file. The SystemParametersInfo function sends this message after an application uses the function to change a
163 /// setting in WIN.INI. 163 /// setting in WIN.INI.
164 /// Note The WM_WININICHANGE message is provided only for compatibility with earlier versions of the system. 164 /// Note The WM_WININICHANGE message is provided only for compatibility with earlier versions of the system.
165 /// Applications should use the WM_SETTINGCHANGE message. 165 /// Applications should use the WM_SETTINGCHANGE message.
166 /// </summary> 166 /// </summary>
167 WININICHANGE = 0x001A, 167 WININICHANGE = 0x001A,
168   168  
169 /// <summary> 169 /// <summary>
170 /// An application sends the WM_WININICHANGE message to all top-level windows after making a change to the WIN.INI 170 /// An application sends the WM_WININICHANGE message to all top-level windows after making a change to the WIN.INI
171 /// file. The SystemParametersInfo function sends this message after an application uses the function to change a 171 /// file. The SystemParametersInfo function sends this message after an application uses the function to change a
172 /// setting in WIN.INI. 172 /// setting in WIN.INI.
173 /// Note The WM_WININICHANGE message is provided only for compatibility with earlier versions of the system. 173 /// Note The WM_WININICHANGE message is provided only for compatibility with earlier versions of the system.
174 /// Applications should use the WM_SETTINGCHANGE message. 174 /// Applications should use the WM_SETTINGCHANGE message.
175 /// </summary> 175 /// </summary>
176 SETTINGCHANGE = WININICHANGE, 176 SETTINGCHANGE = WININICHANGE,
177   177  
178 /// <summary> 178 /// <summary>
179 /// The WM_DEVMODECHANGE message is sent to all top-level windows whenever the user changes device-mode settings. 179 /// The WM_DEVMODECHANGE message is sent to all top-level windows whenever the user changes device-mode settings.
180 /// </summary> 180 /// </summary>
181 DEVMODECHANGE = 0x001B, 181 DEVMODECHANGE = 0x001B,
182   182  
183 /// <summary> 183 /// <summary>
184 /// The WM_ACTIVATEAPP message is sent when a window belonging to a different application than the active window is 184 /// The WM_ACTIVATEAPP message is sent when a window belonging to a different application than the active window is
185 /// about to be activated. The message is sent to the application whose window is being activated and to the 185 /// about to be activated. The message is sent to the application whose window is being activated and to the
186 /// application whose window is being deactivated. 186 /// application whose window is being deactivated.
187 /// </summary> 187 /// </summary>
188 ACTIVATEAPP = 0x001C, 188 ACTIVATEAPP = 0x001C,
189   189  
190 /// <summary> 190 /// <summary>
191 /// An application sends the WM_FONTCHANGE message to all top-level windows in the system after changing the pool of 191 /// An application sends the WM_FONTCHANGE message to all top-level windows in the system after changing the pool of
192 /// font resources. 192 /// font resources.
193 /// </summary> 193 /// </summary>
194 FONTCHANGE = 0x001D, 194 FONTCHANGE = 0x001D,
195   195  
196 /// <summary> 196 /// <summary>
197 /// A message that is sent whenever there is a change in the system time. 197 /// A message that is sent whenever there is a change in the system time.
198 /// </summary> 198 /// </summary>
199 TIMECHANGE = 0x001E, 199 TIMECHANGE = 0x001E,
200   200  
201 /// <summary> 201 /// <summary>
202 /// The WM_CANCELMODE message is sent to cancel certain modes, such as mouse capture. For example, the system sends 202 /// The WM_CANCELMODE message is sent to cancel certain modes, such as mouse capture. For example, the system sends
203 /// this message to the active window when a dialog box or message box is displayed. Certain functions also send this 203 /// this message to the active window when a dialog box or message box is displayed. Certain functions also send this
204 /// message explicitly to the specified window regardless of whether it is the active window. For example, the 204 /// message explicitly to the specified window regardless of whether it is the active window. For example, the
205 /// EnableWindow function sends this message when disabling the specified window. 205 /// EnableWindow function sends this message when disabling the specified window.
206 /// </summary> 206 /// </summary>
207 CANCELMODE = 0x001F, 207 CANCELMODE = 0x001F,
208   208  
209 /// <summary> 209 /// <summary>
210 /// The WM_SETCURSOR message is sent to a window if the mouse causes the cursor to move within a window and mouse input 210 /// The WM_SETCURSOR message is sent to a window if the mouse causes the cursor to move within a window and mouse input
211 /// is not captured. 211 /// is not captured.
212 /// </summary> 212 /// </summary>
213 SETCURSOR = 0x0020, 213 SETCURSOR = 0x0020,
214   214  
215 /// <summary> 215 /// <summary>
216 /// The WM_MOUSEACTIVATE message is sent when the cursor is in an inactive window and the user presses a mouse button. 216 /// The WM_MOUSEACTIVATE message is sent when the cursor is in an inactive window and the user presses a mouse button.
217 /// The parent window receives this message only if the child window passes it to the DefWindowProc function. 217 /// The parent window receives this message only if the child window passes it to the DefWindowProc function.
218 /// </summary> 218 /// </summary>
219 MOUSEACTIVATE = 0x0021, 219 MOUSEACTIVATE = 0x0021,
220   220  
221 /// <summary> 221 /// <summary>
222 /// The WM_CHILDACTIVATE message is sent to a child window when the user clicks the window's title bar or when the 222 /// The WM_CHILDACTIVATE message is sent to a child window when the user clicks the window's title bar or when the
223 /// window is activated, moved, or sized. 223 /// window is activated, moved, or sized.
224 /// </summary> 224 /// </summary>
225 CHILDACTIVATE = 0x0022, 225 CHILDACTIVATE = 0x0022,
226   226  
227 /// <summary> 227 /// <summary>
228 /// The WM_QUEUESYNC message is sent by a computer-based training (CBT) application to separate user-input messages 228 /// The WM_QUEUESYNC message is sent by a computer-based training (CBT) application to separate user-input messages
229 /// from other messages sent through the WH_JOURNALPLAYBACK Hook procedure. 229 /// from other messages sent through the WH_JOURNALPLAYBACK Hook procedure.
230 /// </summary> 230 /// </summary>
231 QUEUESYNC = 0x0023, 231 QUEUESYNC = 0x0023,
232   232  
233 /// <summary> 233 /// <summary>
234 /// The WM_GETMINMAXINFO message is sent to a window when the size or position of the window is about to change. An 234 /// The WM_GETMINMAXINFO message is sent to a window when the size or position of the window is about to change. An
235 /// application can use this message to override the window's default maximized size and position, or its default 235 /// application can use this message to override the window's default maximized size and position, or its default
236 /// minimum or maximum tracking size. 236 /// minimum or maximum tracking size.
237 /// </summary> 237 /// </summary>
238 GETMINMAXINFO = 0x0024, 238 GETMINMAXINFO = 0x0024,
239   239  
240 /// <summary> 240 /// <summary>
241 /// Windows NT 3.51 and earlier: The WM_PAINTICON message is sent to a minimized window when the icon is to be painted. 241 /// Windows NT 3.51 and earlier: The WM_PAINTICON message is sent to a minimized window when the icon is to be painted.
242 /// This message is not sent by newer versions of Microsoft Windows, except in unusual circumstances explained in the 242 /// This message is not sent by newer versions of Microsoft Windows, except in unusual circumstances explained in the
243 /// Remarks. 243 /// Remarks.
244 /// </summary> 244 /// </summary>
245 PAINTICON = 0x0026, 245 PAINTICON = 0x0026,
246   246  
247 /// <summary> 247 /// <summary>
248 /// Windows NT 3.51 and earlier: The WM_ICONERASEBKGND message is sent to a minimized window when the background of the 248 /// Windows NT 3.51 and earlier: The WM_ICONERASEBKGND message is sent to a minimized window when the background of the
249 /// icon must be filled before painting the icon. A window receives this message only if a class icon is defined for 249 /// icon must be filled before painting the icon. A window receives this message only if a class icon is defined for
250 /// the window; otherwise, WM_ERASEBKGND is sent. This message is not sent by newer versions of Windows. 250 /// the window; otherwise, WM_ERASEBKGND is sent. This message is not sent by newer versions of Windows.
251 /// </summary> 251 /// </summary>
252 ICONERASEBKGND = 0x0027, 252 ICONERASEBKGND = 0x0027,
253   253  
254 /// <summary> 254 /// <summary>
255 /// The WM_NEXTDLGCTL message is sent to a dialog box procedure to set the keyboard focus to a different control in the 255 /// The WM_NEXTDLGCTL message is sent to a dialog box procedure to set the keyboard focus to a different control in the
256 /// dialog box. 256 /// dialog box.
257 /// </summary> 257 /// </summary>
258 NEXTDLGCTL = 0x0028, 258 NEXTDLGCTL = 0x0028,
259   259  
260 /// <summary> 260 /// <summary>
261 /// The WM_SPOOLERSTATUS message is sent from Print Manager whenever a job is added to or removed from the Print 261 /// The WM_SPOOLERSTATUS message is sent from Print Manager whenever a job is added to or removed from the Print
262 /// Manager queue. 262 /// Manager queue.
263 /// </summary> 263 /// </summary>
264 SPOOLERSTATUS = 0x002A, 264 SPOOLERSTATUS = 0x002A,
265   265  
266 /// <summary> 266 /// <summary>
267 /// The WM_DRAWITEM message is sent to the parent window of an owner-drawn button, combo box, list box, or menu when a 267 /// The WM_DRAWITEM message is sent to the parent window of an owner-drawn button, combo box, list box, or menu when a
268 /// visual aspect of the button, combo box, list box, or menu has changed. 268 /// visual aspect of the button, combo box, list box, or menu has changed.
269 /// </summary> 269 /// </summary>
270 DRAWITEM = 0x002B, 270 DRAWITEM = 0x002B,
271   271  
272 /// <summary> 272 /// <summary>
273 /// The WM_MEASUREITEM message is sent to the owner window of a combo box, list box, list view control, or menu item 273 /// The WM_MEASUREITEM message is sent to the owner window of a combo box, list box, list view control, or menu item
274 /// when the control or menu is created. 274 /// when the control or menu is created.
275 /// </summary> 275 /// </summary>
276 MEASUREITEM = 0x002C, 276 MEASUREITEM = 0x002C,
277   277  
278 /// <summary> 278 /// <summary>
279 /// Sent to the owner of a list box or combo box when the list box or combo box is destroyed or when items are removed 279 /// Sent to the owner of a list box or combo box when the list box or combo box is destroyed or when items are removed
280 /// by the LB_DELETESTRING, LB_RESETCONTENT, CB_DELETESTRING, or CB_RESETCONTENT message. The system sends a 280 /// by the LB_DELETESTRING, LB_RESETCONTENT, CB_DELETESTRING, or CB_RESETCONTENT message. The system sends a
281 /// WM_DELETEITEM message for each deleted item. The system sends the WM_DELETEITEM message for any deleted list box or 281 /// WM_DELETEITEM message for each deleted item. The system sends the WM_DELETEITEM message for any deleted list box or
282 /// combo box item with nonzero item data. 282 /// combo box item with nonzero item data.
283 /// </summary> 283 /// </summary>
284 DELETEITEM = 0x002D, 284 DELETEITEM = 0x002D,
285   285  
286 /// <summary> 286 /// <summary>
287 /// Sent by a list box with the LBS_WANTKEYBOARDINPUT style to its owner in response to a WM_KEYDOWN message. 287 /// Sent by a list box with the LBS_WANTKEYBOARDINPUT style to its owner in response to a WM_KEYDOWN message.
288 /// </summary> 288 /// </summary>
289 VKEYTOITEM = 0x002E, 289 VKEYTOITEM = 0x002E,
290   290  
291 /// <summary> 291 /// <summary>
292 /// Sent by a list box with the LBS_WANTKEYBOARDINPUT style to its owner in response to a WM_CHAR message. 292 /// Sent by a list box with the LBS_WANTKEYBOARDINPUT style to its owner in response to a WM_CHAR message.
293 /// </summary> 293 /// </summary>
294 CHARTOITEM = 0x002F, 294 CHARTOITEM = 0x002F,
295   295  
296 /// <summary> 296 /// <summary>
297 /// An application sends a WM_SETFONT message to specify the font that a control is to use when drawing text. 297 /// An application sends a WM_SETFONT message to specify the font that a control is to use when drawing text.
298 /// </summary> 298 /// </summary>
299 SETFONT = 0x0030, 299 SETFONT = 0x0030,
300   300  
301 /// <summary> 301 /// <summary>
302 /// An application sends a WM_GETFONT message to a control to retrieve the font with which the control is currently 302 /// An application sends a WM_GETFONT message to a control to retrieve the font with which the control is currently
303 /// drawing its text. 303 /// drawing its text.
304 /// </summary> 304 /// </summary>
305 GETFONT = 0x0031, 305 GETFONT = 0x0031,
306   306  
307 /// <summary> 307 /// <summary>
308 /// An application sends a WM_SETHOTKEY message to a window to associate a hot key with the window. When the user 308 /// An application sends a WM_SETHOTKEY message to a window to associate a hot key with the window. When the user
309 /// presses the hot key, the system activates the window. 309 /// presses the hot key, the system activates the window.
310 /// </summary> 310 /// </summary>
311 SETHOTKEY = 0x0032, 311 SETHOTKEY = 0x0032,
312   312  
313 /// <summary> 313 /// <summary>
314 /// An application sends a WM_GETHOTKEY message to determine the hot key associated with a window. 314 /// An application sends a WM_GETHOTKEY message to determine the hot key associated with a window.
315 /// </summary> 315 /// </summary>
316 GETHOTKEY = 0x0033, 316 GETHOTKEY = 0x0033,
317   317  
318 /// <summary> 318 /// <summary>
319 /// The WM_QUERYDRAGICON message is sent to a minimized (iconic) window. The window is about to be dragged by the user 319 /// The WM_QUERYDRAGICON message is sent to a minimized (iconic) window. The window is about to be dragged by the user
320 /// but does not have an icon defined for its class. An application can return a handle to an icon or cursor. The 320 /// but does not have an icon defined for its class. An application can return a handle to an icon or cursor. The
321 /// system displays this cursor or icon while the user drags the icon. 321 /// system displays this cursor or icon while the user drags the icon.
322 /// </summary> 322 /// </summary>
323 QUERYDRAGICON = 0x0037, 323 QUERYDRAGICON = 0x0037,
324   324  
325 /// <summary> 325 /// <summary>
326 /// The system sends the WM_COMPAREITEM message to determine the relative position of a new item in the sorted list of 326 /// The system sends the WM_COMPAREITEM message to determine the relative position of a new item in the sorted list of
327 /// an owner-drawn combo box or list box. Whenever the application adds a new item, the system sends this message to 327 /// an owner-drawn combo box or list box. Whenever the application adds a new item, the system sends this message to
328 /// the owner of a combo box or list box created with the CBS_SORT or LBS_SORT style. 328 /// the owner of a combo box or list box created with the CBS_SORT or LBS_SORT style.
329 /// </summary> 329 /// </summary>
330 COMPAREITEM = 0x0039, 330 COMPAREITEM = 0x0039,
331   331  
332 /// <summary> 332 /// <summary>
333 /// Active Accessibility sends the WM_GETOBJECT message to obtain information about an accessible object contained in a 333 /// Active Accessibility sends the WM_GETOBJECT message to obtain information about an accessible object contained in a
334 /// server application. 334 /// server application.
335 /// Applications never send this message directly. It is sent only by Active Accessibility in response to calls to 335 /// Applications never send this message directly. It is sent only by Active Accessibility in response to calls to
336 /// AccessibleObjectFromPoint, AccessibleObjectFromEvent, or AccessibleObjectFromWindow. However, server applications 336 /// AccessibleObjectFromPoint, AccessibleObjectFromEvent, or AccessibleObjectFromWindow. However, server applications
337 /// handle this message. 337 /// handle this message.
338 /// </summary> 338 /// </summary>
339 GETOBJECT = 0x003D, 339 GETOBJECT = 0x003D,
340   340  
341 /// <summary> 341 /// <summary>
342 /// The WM_COMPACTING message is sent to all top-level windows when the system detects more than 12.5 percent of system 342 /// The WM_COMPACTING message is sent to all top-level windows when the system detects more than 12.5 percent of system
343 /// time over a 30- to 60-second interval is being spent compacting memory. This indicates that system memory is low. 343 /// time over a 30- to 60-second interval is being spent compacting memory. This indicates that system memory is low.
344 /// </summary> 344 /// </summary>
345 COMPACTING = 0x0041, 345 COMPACTING = 0x0041,
346   346  
347 /// <summary> 347 /// <summary>
348 /// WM_COMMNOTIFY is Obsolete for Win32-Based Applications 348 /// WM_COMMNOTIFY is Obsolete for Win32-Based Applications
349 /// </summary> 349 /// </summary>
350 [Obsolete] COMMNOTIFY = 0x0044, 350 [Obsolete] COMMNOTIFY = 0x0044,
351   351  
352 /// <summary> 352 /// <summary>
353 /// The WM_WINDOWPOSCHANGING message is sent to a window whose size, position, or place in the Z order is about to 353 /// The WM_WINDOWPOSCHANGING message is sent to a window whose size, position, or place in the Z order is about to
354 /// change as a result of a call to the SetWindowPos function or another window-management function. 354 /// change as a result of a call to the SetWindowPos function or another window-management function.
355 /// </summary> 355 /// </summary>
356 WINDOWPOSCHANGING = 0x0046, 356 WINDOWPOSCHANGING = 0x0046,
357   357  
358 /// <summary> 358 /// <summary>
359 /// The WM_WINDOWPOSCHANGED message is sent to a window whose size, position, or place in the Z order has changed as a 359 /// The WM_WINDOWPOSCHANGED message is sent to a window whose size, position, or place in the Z order has changed as a
360 /// result of a call to the SetWindowPos function or another window-management function. 360 /// result of a call to the SetWindowPos function or another window-management function.
361 /// </summary> 361 /// </summary>
362 WINDOWPOSCHANGED = 0x0047, 362 WINDOWPOSCHANGED = 0x0047,
363   363  
364 /// <summary> 364 /// <summary>
365 /// Notifies applications that the system, typically a battery-powered personal computer, is about to enter a suspended 365 /// Notifies applications that the system, typically a battery-powered personal computer, is about to enter a suspended
366 /// mode. 366 /// mode.
367 /// Use: POWERBROADCAST 367 /// Use: POWERBROADCAST
368 /// </summary> 368 /// </summary>
369 [Obsolete] POWER = 0x0048, 369 [Obsolete] POWER = 0x0048,
370   370  
371 /// <summary> 371 /// <summary>
372 /// An application sends the WM_COPYDATA message to pass data to another application. 372 /// An application sends the WM_COPYDATA message to pass data to another application.
373 /// </summary> 373 /// </summary>
374 COPYDATA = 0x004A, 374 COPYDATA = 0x004A,
375   375  
376 /// <summary> 376 /// <summary>
377 /// The WM_CANCELJOURNAL message is posted to an application when a user cancels the application's journaling 377 /// The WM_CANCELJOURNAL message is posted to an application when a user cancels the application's journaling
378 /// activities. The message is posted with a NULL window handle. 378 /// activities. The message is posted with a NULL window handle.
379 /// </summary> 379 /// </summary>
380 CANCELJOURNAL = 0x004B, 380 CANCELJOURNAL = 0x004B,
381   381  
382 /// <summary> 382 /// <summary>
383 /// Sent by a common control to its parent window when an event has occurred or the control requires some information. 383 /// Sent by a common control to its parent window when an event has occurred or the control requires some information.
384 /// </summary> 384 /// </summary>
385 NOTIFY = 0x004E, 385 NOTIFY = 0x004E,
386   386  
387 /// <summary> 387 /// <summary>
388 /// The WM_INPUTLANGCHANGEREQUEST message is posted to the window with the focus when the user chooses a new input 388 /// The WM_INPUTLANGCHANGEREQUEST message is posted to the window with the focus when the user chooses a new input
389 /// language, either with the hotkey (specified in the Keyboard control panel application) or from the indicator on the 389 /// language, either with the hotkey (specified in the Keyboard control panel application) or from the indicator on the
390 /// system taskbar. An application can accept the change by passing the message to the DefWindowProc function or reject 390 /// system taskbar. An application can accept the change by passing the message to the DefWindowProc function or reject
391 /// the change (and prevent it from taking place) by returning immediately. 391 /// the change (and prevent it from taking place) by returning immediately.
392 /// </summary> 392 /// </summary>
393 INPUTLANGCHANGEREQUEST = 0x0050, 393 INPUTLANGCHANGEREQUEST = 0x0050,
394   394  
395 /// <summary> 395 /// <summary>
396 /// The WM_INPUTLANGCHANGE message is sent to the topmost affected window after an application's input language has 396 /// The WM_INPUTLANGCHANGE message is sent to the topmost affected window after an application's input language has
397 /// been changed. You should make any application-specific settings and pass the message to the DefWindowProc function, 397 /// been changed. You should make any application-specific settings and pass the message to the DefWindowProc function,
398 /// which passes the message to all first-level child windows. These child windows can pass the message to 398 /// which passes the message to all first-level child windows. These child windows can pass the message to
399 /// DefWindowProc to have it pass the message to their child windows, and so on. 399 /// DefWindowProc to have it pass the message to their child windows, and so on.
400 /// </summary> 400 /// </summary>
401 INPUTLANGCHANGE = 0x0051, 401 INPUTLANGCHANGE = 0x0051,
402   402  
403 /// <summary> 403 /// <summary>
404 /// Sent to an application that has initiated a training card with Microsoft Windows Help. The message informs the 404 /// Sent to an application that has initiated a training card with Microsoft Windows Help. The message informs the
405 /// application when the user clicks an authorable button. An application initiates a training card by specifying the 405 /// application when the user clicks an authorable button. An application initiates a training card by specifying the
406 /// HELP_TCARD command in a call to the WinHelp function. 406 /// HELP_TCARD command in a call to the WinHelp function.
407 /// </summary> 407 /// </summary>
408 TCARD = 0x0052, 408 TCARD = 0x0052,
409   409  
410 /// <summary> 410 /// <summary>
411 /// Indicates that the user pressed the F1 key. If a menu is active when F1 is pressed, WM_HELP is sent to the window 411 /// Indicates that the user pressed the F1 key. If a menu is active when F1 is pressed, WM_HELP is sent to the window
412 /// associated with the menu; otherwise, WM_HELP is sent to the window that has the keyboard focus. If no window has 412 /// associated with the menu; otherwise, WM_HELP is sent to the window that has the keyboard focus. If no window has
413 /// the keyboard focus, WM_HELP is sent to the currently active window. 413 /// the keyboard focus, WM_HELP is sent to the currently active window.
414 /// </summary> 414 /// </summary>
415 HELP = 0x0053, 415 HELP = 0x0053,
416   416  
417 /// <summary> 417 /// <summary>
418 /// The WM_USERCHANGED message is sent to all windows after the user has logged on or off. When the user logs on or 418 /// The WM_USERCHANGED message is sent to all windows after the user has logged on or off. When the user logs on or
419 /// off, the system updates the user-specific settings. The system sends this message immediately after updating the 419 /// off, the system updates the user-specific settings. The system sends this message immediately after updating the
420 /// settings. 420 /// settings.
421 /// </summary> 421 /// </summary>
422 USERCHANGED = 0x0054, 422 USERCHANGED = 0x0054,
423   423  
424 /// <summary> 424 /// <summary>
425 /// Determines if a window accepts ANSI or Unicode structures in the WM_NOTIFY notification message. WM_NOTIFYFORMAT 425 /// Determines if a window accepts ANSI or Unicode structures in the WM_NOTIFY notification message. WM_NOTIFYFORMAT
426 /// messages are sent from a common control to its parent window and from the parent window to the common control. 426 /// messages are sent from a common control to its parent window and from the parent window to the common control.
427 /// </summary> 427 /// </summary>
428 NOTIFYFORMAT = 0x0055, 428 NOTIFYFORMAT = 0x0055,
429   429  
430 /// <summary> 430 /// <summary>
431 /// The WM_CONTEXTMENU message notifies a window that the user clicked the right mouse button (right-clicked) in the 431 /// The WM_CONTEXTMENU message notifies a window that the user clicked the right mouse button (right-clicked) in the
432 /// window. 432 /// window.
433 /// </summary> 433 /// </summary>
434 CONTEXTMENU = 0x007B, 434 CONTEXTMENU = 0x007B,
435   435  
436 /// <summary> 436 /// <summary>
437 /// The WM_STYLECHANGING message is sent to a window when the SetWindowLong function is about to change one or more of 437 /// The WM_STYLECHANGING message is sent to a window when the SetWindowLong function is about to change one or more of
438 /// the window's styles. 438 /// the window's styles.
439 /// </summary> 439 /// </summary>
440 STYLECHANGING = 0x007C, 440 STYLECHANGING = 0x007C,
441   441  
442 /// <summary> 442 /// <summary>
443 /// The WM_STYLECHANGED message is sent to a window after the SetWindowLong function has changed one or more of the 443 /// The WM_STYLECHANGED message is sent to a window after the SetWindowLong function has changed one or more of the
444 /// window's styles 444 /// window's styles
445 /// </summary> 445 /// </summary>
446 STYLECHANGED = 0x007D, 446 STYLECHANGED = 0x007D,
447   447  
448 /// <summary> 448 /// <summary>
449 /// The WM_DISPLAYCHANGE message is sent to all windows when the display resolution has changed. 449 /// The WM_DISPLAYCHANGE message is sent to all windows when the display resolution has changed.
450 /// </summary> 450 /// </summary>
451 DISPLAYCHANGE = 0x007E, 451 DISPLAYCHANGE = 0x007E,
452   452  
453 /// <summary> 453 /// <summary>
454 /// The WM_GETICON message is sent to a window to retrieve a handle to the large or small icon associated with a 454 /// The WM_GETICON message is sent to a window to retrieve a handle to the large or small icon associated with a
455 /// window. The system displays the large icon in the ALT+TAB dialog, and the small icon in the window caption. 455 /// window. The system displays the large icon in the ALT+TAB dialog, and the small icon in the window caption.
456 /// </summary> 456 /// </summary>
457 GETICON = 0x007F, 457 GETICON = 0x007F,
458   458  
459 /// <summary> 459 /// <summary>
460 /// An application sends the WM_SETICON message to associate a new large or small icon with a window. The system 460 /// An application sends the WM_SETICON message to associate a new large or small icon with a window. The system
461 /// displays the large icon in the ALT+TAB dialog box, and the small icon in the window caption. 461 /// displays the large icon in the ALT+TAB dialog box, and the small icon in the window caption.
462 /// </summary> 462 /// </summary>
463 SETICON = 0x0080, 463 SETICON = 0x0080,
464   464  
465 /// <summary> 465 /// <summary>
466 /// The WM_NCCREATE message is sent prior to the WM_CREATE message when a window is first created. 466 /// The WM_NCCREATE message is sent prior to the WM_CREATE message when a window is first created.
467 /// </summary> 467 /// </summary>
468 NCCREATE = 0x0081, 468 NCCREATE = 0x0081,
469   469  
470 /// <summary> 470 /// <summary>
471 /// The WM_NCDESTROY message informs a window that its nonclient area is being destroyed. The DestroyWindow function 471 /// The WM_NCDESTROY message informs a window that its nonclient area is being destroyed. The DestroyWindow function
472 /// sends the WM_NCDESTROY message to the window following the WM_DESTROY message. WM_DESTROY is used to free the 472 /// sends the WM_NCDESTROY message to the window following the WM_DESTROY message. WM_DESTROY is used to free the
473 /// allocated memory object associated with the window. 473 /// allocated memory object associated with the window.
474 /// The WM_NCDESTROY message is sent after the child windows have been destroyed. In contrast, WM_DESTROY is sent 474 /// The WM_NCDESTROY message is sent after the child windows have been destroyed. In contrast, WM_DESTROY is sent
475 /// before the child windows are destroyed. 475 /// before the child windows are destroyed.
476 /// </summary> 476 /// </summary>
477 NCDESTROY = 0x0082, 477 NCDESTROY = 0x0082,
478   478  
479 /// <summary> 479 /// <summary>
480 /// The WM_NCCALCSIZE message is sent when the size and position of a window's client area must be calculated. By 480 /// The WM_NCCALCSIZE message is sent when the size and position of a window's client area must be calculated. By
481 /// processing this message, an application can control the content of the window's client area when the size or 481 /// processing this message, an application can control the content of the window's client area when the size or
482 /// position of the window changes. 482 /// position of the window changes.
483 /// </summary> 483 /// </summary>
484 NCCALCSIZE = 0x0083, 484 NCCALCSIZE = 0x0083,
485   485  
486 /// <summary> 486 /// <summary>
487 /// The WM_NCHITTEST message is sent to a window when the cursor moves, or when a mouse button is pressed or released. 487 /// The WM_NCHITTEST message is sent to a window when the cursor moves, or when a mouse button is pressed or released.
488 /// If the mouse is not captured, the message is sent to the window beneath the cursor. Otherwise, the message is sent 488 /// If the mouse is not captured, the message is sent to the window beneath the cursor. Otherwise, the message is sent
489 /// to the window that has captured the mouse. 489 /// to the window that has captured the mouse.
490 /// </summary> 490 /// </summary>
491 NCHITTEST = 0x0084, 491 NCHITTEST = 0x0084,
492   492  
493 /// <summary> 493 /// <summary>
494 /// The WM_NCPAINT message is sent to a window when its frame must be painted. 494 /// The WM_NCPAINT message is sent to a window when its frame must be painted.
495 /// </summary> 495 /// </summary>
496 NCPAINT = 0x0085, 496 NCPAINT = 0x0085,
497   497  
498 /// <summary> 498 /// <summary>
499 /// The WM_NCACTIVATE message is sent to a window when its nonclient area needs to be changed to indicate an active or 499 /// The WM_NCACTIVATE message is sent to a window when its nonclient area needs to be changed to indicate an active or
500 /// inactive state. 500 /// inactive state.
501 /// </summary> 501 /// </summary>
502 NCACTIVATE = 0x0086, 502 NCACTIVATE = 0x0086,
503   503  
504 /// <summary> 504 /// <summary>
505 /// The WM_GETDLGCODE message is sent to the window procedure associated with a control. By default, the system handles 505 /// The WM_GETDLGCODE message is sent to the window procedure associated with a control. By default, the system handles
506 /// all keyboard input to the control; the system interprets certain types of keyboard input as dialog box navigation 506 /// all keyboard input to the control; the system interprets certain types of keyboard input as dialog box navigation
507 /// keys. To override this default behavior, the control can respond to the WM_GETDLGCODE message to indicate the types 507 /// keys. To override this default behavior, the control can respond to the WM_GETDLGCODE message to indicate the types
508 /// of input it wants to process itself. 508 /// of input it wants to process itself.
509 /// </summary> 509 /// </summary>
510 GETDLGCODE = 0x0087, 510 GETDLGCODE = 0x0087,
511   511  
512 /// <summary> 512 /// <summary>
513 /// The WM_SYNCPAINT message is used to synchronize painting while avoiding linking independent GUI threads. 513 /// The WM_SYNCPAINT message is used to synchronize painting while avoiding linking independent GUI threads.
514 /// </summary> 514 /// </summary>
515 SYNCPAINT = 0x0088, 515 SYNCPAINT = 0x0088,
516   516  
517 /// <summary> 517 /// <summary>
518 /// The WM_NCMOUSEMOVE message is posted to a window when the cursor is moved within the nonclient area of the window. 518 /// The WM_NCMOUSEMOVE message is posted to a window when the cursor is moved within the nonclient area of the window.
519 /// This message is posted to the window that contains the cursor. If a window has captured the mouse, this message is 519 /// This message is posted to the window that contains the cursor. If a window has captured the mouse, this message is
520 /// not posted. 520 /// not posted.
521 /// </summary> 521 /// </summary>
522 NCMOUSEMOVE = 0x00A0, 522 NCMOUSEMOVE = 0x00A0,
523   523  
524 /// <summary> 524 /// <summary>
525 /// The WM_NCLBUTTONDOWN message is posted when the user presses the left mouse button while the cursor is within the 525 /// The WM_NCLBUTTONDOWN message is posted when the user presses the left mouse button while the cursor is within the
526 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 526 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
527 /// the mouse, this message is not posted. 527 /// the mouse, this message is not posted.
528 /// </summary> 528 /// </summary>
529 NCLBUTTONDOWN = 0x00A1, 529 NCLBUTTONDOWN = 0x00A1,
530   530  
531 /// <summary> 531 /// <summary>
532 /// The WM_NCLBUTTONUP message is posted when the user releases the left mouse button while the cursor is within the 532 /// The WM_NCLBUTTONUP message is posted when the user releases the left mouse button while the cursor is within the
533 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 533 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
534 /// the mouse, this message is not posted. 534 /// the mouse, this message is not posted.
535 /// </summary> 535 /// </summary>
536 NCLBUTTONUP = 0x00A2, 536 NCLBUTTONUP = 0x00A2,
537   537  
538 /// <summary> 538 /// <summary>
539 /// The WM_NCLBUTTONDBLCLK message is posted when the user double-clicks the left mouse button while the cursor is 539 /// The WM_NCLBUTTONDBLCLK message is posted when the user double-clicks the left mouse button while the cursor is
540 /// within the nonclient area of a window. This message is posted to the window that contains the cursor. If a window 540 /// within the nonclient area of a window. This message is posted to the window that contains the cursor. If a window
541 /// has captured the mouse, this message is not posted. 541 /// has captured the mouse, this message is not posted.
542 /// </summary> 542 /// </summary>
543 NCLBUTTONDBLCLK = 0x00A3, 543 NCLBUTTONDBLCLK = 0x00A3,
544   544  
545 /// <summary> 545 /// <summary>
546 /// The WM_NCRBUTTONDOWN message is posted when the user presses the right mouse button while the cursor is within the 546 /// The WM_NCRBUTTONDOWN message is posted when the user presses the right mouse button while the cursor is within the
547 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 547 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
548 /// the mouse, this message is not posted. 548 /// the mouse, this message is not posted.
549 /// </summary> 549 /// </summary>
550 NCRBUTTONDOWN = 0x00A4, 550 NCRBUTTONDOWN = 0x00A4,
551   551  
552 /// <summary> 552 /// <summary>
553 /// The WM_NCRBUTTONUP message is posted when the user releases the right mouse button while the cursor is within the 553 /// The WM_NCRBUTTONUP message is posted when the user releases the right mouse button while the cursor is within the
554 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 554 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
555 /// the mouse, this message is not posted. 555 /// the mouse, this message is not posted.
556 /// </summary> 556 /// </summary>
557 NCRBUTTONUP = 0x00A5, 557 NCRBUTTONUP = 0x00A5,
558   558  
559 /// <summary> 559 /// <summary>
560 /// The WM_NCRBUTTONDBLCLK message is posted when the user double-clicks the right mouse button while the cursor is 560 /// The WM_NCRBUTTONDBLCLK message is posted when the user double-clicks the right mouse button while the cursor is
561 /// within the nonclient area of a window. This message is posted to the window that contains the cursor. If a window 561 /// within the nonclient area of a window. This message is posted to the window that contains the cursor. If a window
562 /// has captured the mouse, this message is not posted. 562 /// has captured the mouse, this message is not posted.
563 /// </summary> 563 /// </summary>
564 NCRBUTTONDBLCLK = 0x00A6, 564 NCRBUTTONDBLCLK = 0x00A6,
565   565  
566 /// <summary> 566 /// <summary>
567 /// The WM_NCMBUTTONDOWN message is posted when the user presses the middle mouse button while the cursor is within the 567 /// The WM_NCMBUTTONDOWN message is posted when the user presses the middle mouse button while the cursor is within the
568 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 568 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
569 /// the mouse, this message is not posted. 569 /// the mouse, this message is not posted.
570 /// </summary> 570 /// </summary>
571 NCMBUTTONDOWN = 0x00A7, 571 NCMBUTTONDOWN = 0x00A7,
572   572  
573 /// <summary> 573 /// <summary>
574 /// The WM_NCMBUTTONUP message is posted when the user releases the middle mouse button while the cursor is within the 574 /// The WM_NCMBUTTONUP message is posted when the user releases the middle mouse button while the cursor is within the
575 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 575 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
576 /// the mouse, this message is not posted. 576 /// the mouse, this message is not posted.
577 /// </summary> 577 /// </summary>
578 NCMBUTTONUP = 0x00A8, 578 NCMBUTTONUP = 0x00A8,
579   579  
580 /// <summary> 580 /// <summary>
581 /// The WM_NCMBUTTONDBLCLK message is posted when the user double-clicks the middle mouse button while the cursor is 581 /// The WM_NCMBUTTONDBLCLK message is posted when the user double-clicks the middle mouse button while the cursor is
582 /// within the nonclient area of a window. This message is posted to the window that contains the cursor. If a window 582 /// within the nonclient area of a window. This message is posted to the window that contains the cursor. If a window
583 /// has captured the mouse, this message is not posted. 583 /// has captured the mouse, this message is not posted.
584 /// </summary> 584 /// </summary>
585 NCMBUTTONDBLCLK = 0x00A9, 585 NCMBUTTONDBLCLK = 0x00A9,
586   586  
587 /// <summary> 587 /// <summary>
588 /// The WM_NCXBUTTONDOWN message is posted when the user presses the first or second X button while the cursor is in 588 /// The WM_NCXBUTTONDOWN message is posted when the user presses the first or second X button while the cursor is in
589 /// the nonclient area of a window. This message is posted to the window that contains the cursor. If a window has 589 /// the nonclient area of a window. This message is posted to the window that contains the cursor. If a window has
590 /// captured the mouse, this message is not posted. 590 /// captured the mouse, this message is not posted.
591 /// </summary> 591 /// </summary>
592 NCXBUTTONDOWN = 0x00AB, 592 NCXBUTTONDOWN = 0x00AB,
593   593  
594 /// <summary> 594 /// <summary>
595 /// The WM_NCXBUTTONUP message is posted when the user releases the first or second X button while the cursor is in the 595 /// The WM_NCXBUTTONUP message is posted when the user releases the first or second X button while the cursor is in the
596 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured 596 /// nonclient area of a window. This message is posted to the window that contains the cursor. If a window has captured
597 /// the mouse, this message is not posted. 597 /// the mouse, this message is not posted.
598 /// </summary> 598 /// </summary>
599 NCXBUTTONUP = 0x00AC, 599 NCXBUTTONUP = 0x00AC,
600   600  
601 /// <summary> 601 /// <summary>
602 /// The WM_NCXBUTTONDBLCLK message is posted when the user double-clicks the first or second X button while the cursor 602 /// The WM_NCXBUTTONDBLCLK message is posted when the user double-clicks the first or second X button while the cursor
603 /// is in the nonclient area of a window. This message is posted to the window that contains the cursor. If a window 603 /// is in the nonclient area of a window. This message is posted to the window that contains the cursor. If a window
604 /// has captured the mouse, this message is not posted. 604 /// has captured the mouse, this message is not posted.
605 /// </summary> 605 /// </summary>
606 NCXBUTTONDBLCLK = 0x00AD, 606 NCXBUTTONDBLCLK = 0x00AD,
607   607  
608 /// <summary> 608 /// <summary>
609 /// The WM_INPUT_DEVICE_CHANGE message is sent to the window that registered to receive raw input. A window receives 609 /// The WM_INPUT_DEVICE_CHANGE message is sent to the window that registered to receive raw input. A window receives
610 /// this message through its WindowProc function. 610 /// this message through its WindowProc function.
611 /// </summary> 611 /// </summary>
612 INPUT_DEVICE_CHANGE = 0x00FE, 612 INPUT_DEVICE_CHANGE = 0x00FE,
613   613  
614 /// <summary> 614 /// <summary>
615 /// The WM_INPUT message is sent to the window that is getting raw input. 615 /// The WM_INPUT message is sent to the window that is getting raw input.
616 /// </summary> 616 /// </summary>
617 INPUT = 0x00FF, 617 INPUT = 0x00FF,
618   618  
619 /// <summary> 619 /// <summary>
620 /// This message filters for keyboard messages. 620 /// This message filters for keyboard messages.
621 /// </summary> 621 /// </summary>
622 KEYFIRST = 0x0100, 622 KEYFIRST = 0x0100,
623   623  
624 /// <summary> 624 /// <summary>
625 /// The WM_KEYDOWN message is posted to the window with the keyboard focus when a nonsystem key is pressed. A nonsystem 625 /// The WM_KEYDOWN message is posted to the window with the keyboard focus when a nonsystem key is pressed. A nonsystem
626 /// key is a key that is pressed when the ALT key is not pressed. 626 /// key is a key that is pressed when the ALT key is not pressed.
627 /// </summary> 627 /// </summary>
628 KEYDOWN = 0x0100, 628 KEYDOWN = 0x0100,
629   629  
630 /// <summary> 630 /// <summary>
631 /// The WM_KEYUP message is posted to the window with the keyboard focus when a nonsystem key is released. A nonsystem 631 /// The WM_KEYUP message is posted to the window with the keyboard focus when a nonsystem key is released. A nonsystem
632 /// key is a key that is pressed when the ALT key is not pressed, or a keyboard key that is pressed when a window has 632 /// key is a key that is pressed when the ALT key is not pressed, or a keyboard key that is pressed when a window has
633 /// the keyboard focus. 633 /// the keyboard focus.
634 /// </summary> 634 /// </summary>
635 KEYUP = 0x0101, 635 KEYUP = 0x0101,
636   636  
637 /// <summary> 637 /// <summary>
638 /// The WM_CHAR message is posted to the window with the keyboard focus when a WM_KEYDOWN message is translated by the 638 /// The WM_CHAR message is posted to the window with the keyboard focus when a WM_KEYDOWN message is translated by the
639 /// TranslateMessage function. The WM_CHAR message contains the character code of the key that was pressed. 639 /// TranslateMessage function. The WM_CHAR message contains the character code of the key that was pressed.
640 /// </summary> 640 /// </summary>
641 CHAR = 0x0102, 641 CHAR = 0x0102,
642   642  
643 /// <summary> 643 /// <summary>
644 /// The WM_DEADCHAR message is posted to the window with the keyboard focus when a WM_KEYUP message is translated by 644 /// The WM_DEADCHAR message is posted to the window with the keyboard focus when a WM_KEYUP message is translated by
645 /// the TranslateMessage function. WM_DEADCHAR specifies a character code generated by a dead key. A dead key is a key 645 /// the TranslateMessage function. WM_DEADCHAR specifies a character code generated by a dead key. A dead key is a key
646 /// that generates a character, such as the umlaut (double-dot), that is combined with another character to form a 646 /// that generates a character, such as the umlaut (double-dot), that is combined with another character to form a
647 /// composite character. For example, the umlaut-O character (Ö) is generated by typing the dead key for the umlaut 647 /// composite character. For example, the umlaut-O character (Ö) is generated by typing the dead key for the umlaut
648 /// character, and then typing the O key. 648 /// character, and then typing the O key.
649 /// </summary> 649 /// </summary>
650 DEADCHAR = 0x0103, 650 DEADCHAR = 0x0103,
651   651  
652 /// <summary> 652 /// <summary>
653 /// The WM_SYSKEYDOWN message is posted to the window with the keyboard focus when the user presses the F10 key (which 653 /// The WM_SYSKEYDOWN message is posted to the window with the keyboard focus when the user presses the F10 key (which
654 /// activates the menu bar) or holds down the ALT key and then presses another key. It also occurs when no window 654 /// activates the menu bar) or holds down the ALT key and then presses another key. It also occurs when no window
655 /// currently has the keyboard focus; in this case, the WM_SYSKEYDOWN message is sent to the active window. The window 655 /// currently has the keyboard focus; in this case, the WM_SYSKEYDOWN message is sent to the active window. The window
656 /// that receives the message can distinguish between these two contexts by checking the context code in the lParam 656 /// that receives the message can distinguish between these two contexts by checking the context code in the lParam
657 /// parameter. 657 /// parameter.
658 /// </summary> 658 /// </summary>
659 SYSKEYDOWN = 0x0104, 659 SYSKEYDOWN = 0x0104,
660   660  
661 /// <summary> 661 /// <summary>
662 /// The WM_SYSKEYUP message is posted to the window with the keyboard focus when the user releases a key that was 662 /// The WM_SYSKEYUP message is posted to the window with the keyboard focus when the user releases a key that was
663 /// pressed while the ALT key was held down. It also occurs when no window currently has the keyboard focus; in this 663 /// pressed while the ALT key was held down. It also occurs when no window currently has the keyboard focus; in this
664 /// case, the WM_SYSKEYUP message is sent to the active window. The window that receives the message can distinguish 664 /// case, the WM_SYSKEYUP message is sent to the active window. The window that receives the message can distinguish
665 /// between these two contexts by checking the context code in the lParam parameter. 665 /// between these two contexts by checking the context code in the lParam parameter.
666 /// </summary> 666 /// </summary>
667 SYSKEYUP = 0x0105, 667 SYSKEYUP = 0x0105,
668   668  
669 /// <summary> 669 /// <summary>
670 /// The WM_SYSCHAR message is posted to the window with the keyboard focus when a WM_SYSKEYDOWN message is translated 670 /// The WM_SYSCHAR message is posted to the window with the keyboard focus when a WM_SYSKEYDOWN message is translated
671 /// by the TranslateMessage function. It specifies the character code of a system character key — that is, a character 671 /// by the TranslateMessage function. It specifies the character code of a system character key — that is, a character
672 /// key that is pressed while the ALT key is down. 672 /// key that is pressed while the ALT key is down.
673 /// </summary> 673 /// </summary>
674 SYSCHAR = 0x0106, 674 SYSCHAR = 0x0106,
675   675  
676 /// <summary> 676 /// <summary>
677 /// The WM_SYSDEADCHAR message is sent to the window with the keyboard focus when a WM_SYSKEYDOWN message is translated 677 /// The WM_SYSDEADCHAR message is sent to the window with the keyboard focus when a WM_SYSKEYDOWN message is translated
678 /// by the TranslateMessage function. WM_SYSDEADCHAR specifies the character code of a system dead key — that is, a 678 /// by the TranslateMessage function. WM_SYSDEADCHAR specifies the character code of a system dead key — that is, a
679 /// dead key that is pressed while holding down the ALT key. 679 /// dead key that is pressed while holding down the ALT key.
680 /// </summary> 680 /// </summary>
681 SYSDEADCHAR = 0x0107, 681 SYSDEADCHAR = 0x0107,
682   682  
683 /// <summary> 683 /// <summary>
684 /// The WM_UNICHAR message is posted to the window with the keyboard focus when a WM_KEYDOWN message is translated by 684 /// The WM_UNICHAR message is posted to the window with the keyboard focus when a WM_KEYDOWN message is translated by
685 /// the TranslateMessage function. The WM_UNICHAR message contains the character code of the key that was pressed. 685 /// the TranslateMessage function. The WM_UNICHAR message contains the character code of the key that was pressed.
686 /// The WM_UNICHAR message is equivalent to WM_CHAR, but it uses Unicode Transformation Format (UTF)-32, whereas 686 /// The WM_UNICHAR message is equivalent to WM_CHAR, but it uses Unicode Transformation Format (UTF)-32, whereas
687 /// WM_CHAR uses UTF-16. It is designed to send or post Unicode characters to ANSI windows and it can can handle 687 /// WM_CHAR uses UTF-16. It is designed to send or post Unicode characters to ANSI windows and it can can handle
688 /// Unicode Supplementary Plane characters. 688 /// Unicode Supplementary Plane characters.
689 /// </summary> 689 /// </summary>
690 UNICHAR = 0x0109, 690 UNICHAR = 0x0109,
691   691  
692 /// <summary> 692 /// <summary>
693 /// This message filters for keyboard messages. 693 /// This message filters for keyboard messages.
694 /// </summary> 694 /// </summary>
695 KEYLAST = 0x0108, 695 KEYLAST = 0x0108,
696   696  
697 /// <summary> 697 /// <summary>
698 /// Sent immediately before the IME generates the composition string as a result of a keystroke. A window receives this 698 /// Sent immediately before the IME generates the composition string as a result of a keystroke. A window receives this
699 /// message through its WindowProc function. 699 /// message through its WindowProc function.
700 /// </summary> 700 /// </summary>
701 IME_STARTCOMPOSITION = 0x010D, 701 IME_STARTCOMPOSITION = 0x010D,
702   702  
703 /// <summary> 703 /// <summary>
704 /// Sent to an application when the IME ends composition. A window receives this message through its WindowProc 704 /// Sent to an application when the IME ends composition. A window receives this message through its WindowProc
705 /// function. 705 /// function.
706 /// </summary> 706 /// </summary>
707 IME_ENDCOMPOSITION = 0x010E, 707 IME_ENDCOMPOSITION = 0x010E,
708   708  
709 /// <summary> 709 /// <summary>
710 /// Sent to an application when the IME changes composition status as a result of a keystroke. A window receives this 710 /// Sent to an application when the IME changes composition status as a result of a keystroke. A window receives this
711 /// message through its WindowProc function. 711 /// message through its WindowProc function.
712 /// </summary> 712 /// </summary>
713 IME_COMPOSITION = 0x010F, 713 IME_COMPOSITION = 0x010F,
714   714  
715 IME_KEYLAST = 0x010F, 715 IME_KEYLAST = 0x010F,
716   716  
717 /// <summary> 717 /// <summary>
718 /// The WM_INITDIALOG message is sent to the dialog box procedure immediately before a dialog box is displayed. Dialog 718 /// The WM_INITDIALOG message is sent to the dialog box procedure immediately before a dialog box is displayed. Dialog
719 /// box procedures typically use this message to initialize controls and carry out any other initialization tasks that 719 /// box procedures typically use this message to initialize controls and carry out any other initialization tasks that
720 /// affect the appearance of the dialog box. 720 /// affect the appearance of the dialog box.
721 /// </summary> 721 /// </summary>
722 INITDIALOG = 0x0110, 722 INITDIALOG = 0x0110,
723   723  
724 /// <summary> 724 /// <summary>
725 /// The WM_COMMAND message is sent when the user selects a command item from a menu, when a control sends a 725 /// The WM_COMMAND message is sent when the user selects a command item from a menu, when a control sends a
726 /// notification message to its parent window, or when an accelerator keystroke is translated. 726 /// notification message to its parent window, or when an accelerator keystroke is translated.
727 /// </summary> 727 /// </summary>
728 COMMAND = 0x0111, 728 COMMAND = 0x0111,
729   729  
730 /// <summary> 730 /// <summary>
731 /// A window receives this message when the user chooses a command from the Window menu, clicks the maximize button, 731 /// A window receives this message when the user chooses a command from the Window menu, clicks the maximize button,
732 /// minimize button, restore button, close button, or moves the form. You can stop the form from moving by filtering 732 /// minimize button, restore button, close button, or moves the form. You can stop the form from moving by filtering
733 /// this out. 733 /// this out.
734 /// </summary> 734 /// </summary>
735 SYSCOMMAND = 0x0112, 735 SYSCOMMAND = 0x0112,
736   736  
737 /// <summary> 737 /// <summary>
738 /// The WM_TIMER message is posted to the installing thread's message queue when a timer expires. The message is posted 738 /// The WM_TIMER message is posted to the installing thread's message queue when a timer expires. The message is posted
739 /// by the GetMessage or PeekMessage function. 739 /// by the GetMessage or PeekMessage function.
740 /// </summary> 740 /// </summary>
741 TIMER = 0x0113, 741 TIMER = 0x0113,
742   742  
743 /// <summary> 743 /// <summary>
744 /// The WM_HSCROLL message is sent to a window when a scroll event occurs in the window's standard horizontal scroll 744 /// The WM_HSCROLL message is sent to a window when a scroll event occurs in the window's standard horizontal scroll
745 /// bar. This message is also sent to the owner of a horizontal scroll bar control when a scroll event occurs in the 745 /// bar. This message is also sent to the owner of a horizontal scroll bar control when a scroll event occurs in the
746 /// control. 746 /// control.
747 /// </summary> 747 /// </summary>
748 HSCROLL = 0x0114, 748 HSCROLL = 0x0114,
749   749  
750 /// <summary> 750 /// <summary>
751 /// The WM_VSCROLL message is sent to a window when a scroll event occurs in the window's standard vertical scroll bar. 751 /// The WM_VSCROLL message is sent to a window when a scroll event occurs in the window's standard vertical scroll bar.
752 /// This message is also sent to the owner of a vertical scroll bar control when a scroll event occurs in the control. 752 /// This message is also sent to the owner of a vertical scroll bar control when a scroll event occurs in the control.
753 /// </summary> 753 /// </summary>
754 VSCROLL = 0x0115, 754 VSCROLL = 0x0115,
755   755  
756 /// <summary> 756 /// <summary>
757 /// The WM_INITMENU message is sent when a menu is about to become active. It occurs when the user clicks an item on 757 /// The WM_INITMENU message is sent when a menu is about to become active. It occurs when the user clicks an item on
758 /// the menu bar or presses a menu key. This allows the application to modify the menu before it is displayed. 758 /// the menu bar or presses a menu key. This allows the application to modify the menu before it is displayed.
759 /// </summary> 759 /// </summary>
760 INITMENU = 0x0116, 760 INITMENU = 0x0116,
761   761  
762 /// <summary> 762 /// <summary>
763 /// The WM_INITMENUPOPUP message is sent when a drop-down menu or submenu is about to become active. This allows an 763 /// The WM_INITMENUPOPUP message is sent when a drop-down menu or submenu is about to become active. This allows an
764 /// application to modify the menu before it is displayed, without changing the entire menu. 764 /// application to modify the menu before it is displayed, without changing the entire menu.
765 /// </summary> 765 /// </summary>
766 INITMENUPOPUP = 0x0117, 766 INITMENUPOPUP = 0x0117,
767   767  
768 /// <summary> 768 /// <summary>
769 /// The WM_MENUSELECT message is sent to a menu's owner window when the user selects a menu item. 769 /// The WM_MENUSELECT message is sent to a menu's owner window when the user selects a menu item.
770 /// </summary> 770 /// </summary>
771 MENUSELECT = 0x011F, 771 MENUSELECT = 0x011F,
772   772  
773 /// <summary> 773 /// <summary>
774 /// The WM_MENUCHAR message is sent when a menu is active and the user presses a key that does not correspond to any 774 /// The WM_MENUCHAR message is sent when a menu is active and the user presses a key that does not correspond to any
775 /// mnemonic or accelerator key. This message is sent to the window that owns the menu. 775 /// mnemonic or accelerator key. This message is sent to the window that owns the menu.
776 /// </summary> 776 /// </summary>
777 MENUCHAR = 0x0120, 777 MENUCHAR = 0x0120,
778   778  
779 /// <summary> 779 /// <summary>
780 /// The WM_ENTERIDLE message is sent to the owner window of a modal dialog box or menu that is entering an idle state. 780 /// The WM_ENTERIDLE message is sent to the owner window of a modal dialog box or menu that is entering an idle state.
781 /// A modal dialog box or menu enters an idle state when no messages are waiting in its queue after it has processed 781 /// A modal dialog box or menu enters an idle state when no messages are waiting in its queue after it has processed
782 /// one or more previous messages. 782 /// one or more previous messages.
783 /// </summary> 783 /// </summary>
784 ENTERIDLE = 0x0121, 784 ENTERIDLE = 0x0121,
785   785  
786 /// <summary> 786 /// <summary>
787 /// The WM_MENURBUTTONUP message is sent when the user releases the right mouse button while the cursor is on a menu 787 /// The WM_MENURBUTTONUP message is sent when the user releases the right mouse button while the cursor is on a menu
788 /// item. 788 /// item.
789 /// </summary> 789 /// </summary>
790 MENURBUTTONUP = 0x0122, 790 MENURBUTTONUP = 0x0122,
791   791  
792 /// <summary> 792 /// <summary>
793 /// The WM_MENUDRAG message is sent to the owner of a drag-and-drop menu when the user drags a menu item. 793 /// The WM_MENUDRAG message is sent to the owner of a drag-and-drop menu when the user drags a menu item.
794 /// </summary> 794 /// </summary>
795 MENUDRAG = 0x0123, 795 MENUDRAG = 0x0123,
796   796  
797 /// <summary> 797 /// <summary>
798 /// The WM_MENUGETOBJECT message is sent to the owner of a drag-and-drop menu when the mouse cursor enters a menu item 798 /// The WM_MENUGETOBJECT message is sent to the owner of a drag-and-drop menu when the mouse cursor enters a menu item
799 /// or moves from the center of the item to the top or bottom of the item. 799 /// or moves from the center of the item to the top or bottom of the item.
800 /// </summary> 800 /// </summary>
801 MENUGETOBJECT = 0x0124, 801 MENUGETOBJECT = 0x0124,
802   802  
803 /// <summary> 803 /// <summary>
804 /// The WM_UNINITMENUPOPUP message is sent when a drop-down menu or submenu has been destroyed. 804 /// The WM_UNINITMENUPOPUP message is sent when a drop-down menu or submenu has been destroyed.
805 /// </summary> 805 /// </summary>
806 UNINITMENUPOPUP = 0x0125, 806 UNINITMENUPOPUP = 0x0125,
807   807  
808 /// <summary> 808 /// <summary>
809 /// The WM_MENUCOMMAND message is sent when the user makes a selection from a menu. 809 /// The WM_MENUCOMMAND message is sent when the user makes a selection from a menu.
810 /// </summary> 810 /// </summary>
811 MENUCOMMAND = 0x0126, 811 MENUCOMMAND = 0x0126,
812   812  
813 /// <summary> 813 /// <summary>
814 /// An application sends the WM_CHANGEUISTATE message to indicate that the user interface (UI) state should be changed. 814 /// An application sends the WM_CHANGEUISTATE message to indicate that the user interface (UI) state should be changed.
815 /// </summary> 815 /// </summary>
816 CHANGEUISTATE = 0x0127, 816 CHANGEUISTATE = 0x0127,
817   817  
818 /// <summary> 818 /// <summary>
819 /// An application sends the WM_UPDATEUISTATE message to change the user interface (UI) state for the specified window 819 /// An application sends the WM_UPDATEUISTATE message to change the user interface (UI) state for the specified window
820 /// and all its child windows. 820 /// and all its child windows.
821 /// </summary> 821 /// </summary>
822 UPDATEUISTATE = 0x0128, 822 UPDATEUISTATE = 0x0128,
823   823  
824 /// <summary> 824 /// <summary>
825 /// An application sends the WM_QUERYUISTATE message to retrieve the user interface (UI) state for a window. 825 /// An application sends the WM_QUERYUISTATE message to retrieve the user interface (UI) state for a window.
826 /// </summary> 826 /// </summary>
827 QUERYUISTATE = 0x0129, 827 QUERYUISTATE = 0x0129,
828   828  
829 /// <summary> 829 /// <summary>
830 /// The WM_CTLCOLORMSGBOX message is sent to the owner window of a message box before Windows draws the message box. By 830 /// The WM_CTLCOLORMSGBOX message is sent to the owner window of a message box before Windows draws the message box. By
831 /// responding to this message, the owner window can set the text and background colors of the message box by using the 831 /// responding to this message, the owner window can set the text and background colors of the message box by using the
832 /// given display device context handle. 832 /// given display device context handle.
833 /// </summary> 833 /// </summary>
834 CTLCOLORMSGBOX = 0x0132, 834 CTLCOLORMSGBOX = 0x0132,
835   835  
836 /// <summary> 836 /// <summary>
837 /// An edit control that is not read-only or disabled sends the WM_CTLCOLOREDIT message to its parent window when the 837 /// An edit control that is not read-only or disabled sends the WM_CTLCOLOREDIT message to its parent window when the
838 /// control is about to be drawn. By responding to this message, the parent window can use the specified device context 838 /// control is about to be drawn. By responding to this message, the parent window can use the specified device context
839 /// handle to set the text and background colors of the edit control. 839 /// handle to set the text and background colors of the edit control.
840 /// </summary> 840 /// </summary>
841 CTLCOLOREDIT = 0x0133, 841 CTLCOLOREDIT = 0x0133,
842   842  
843 /// <summary> 843 /// <summary>
844 /// Sent to the parent window of a list box before the system draws the list box. By responding to this message, the 844 /// Sent to the parent window of a list box before the system draws the list box. By responding to this message, the
845 /// parent window can set the text and background colors of the list box by using the specified display device context 845 /// parent window can set the text and background colors of the list box by using the specified display device context
846 /// handle. 846 /// handle.
847 /// </summary> 847 /// </summary>
848 CTLCOLORLISTBOX = 0x0134, 848 CTLCOLORLISTBOX = 0x0134,
849   849  
850 /// <summary> 850 /// <summary>
851 /// The WM_CTLCOLORBTN message is sent to the parent window of a button before drawing the button. The parent window 851 /// The WM_CTLCOLORBTN message is sent to the parent window of a button before drawing the button. The parent window
852 /// can change the button's text and background colors. However, only owner-drawn buttons respond to the parent window 852 /// can change the button's text and background colors. However, only owner-drawn buttons respond to the parent window
853 /// processing this message. 853 /// processing this message.
854 /// </summary> 854 /// </summary>
855 CTLCOLORBTN = 0x0135, 855 CTLCOLORBTN = 0x0135,
856   856  
857 /// <summary> 857 /// <summary>
858 /// The WM_CTLCOLORDLG message is sent to a dialog box before the system draws the dialog box. By responding to this 858 /// The WM_CTLCOLORDLG message is sent to a dialog box before the system draws the dialog box. By responding to this
859 /// message, the dialog box can set its text and background colors using the specified display device context handle. 859 /// message, the dialog box can set its text and background colors using the specified display device context handle.
860 /// </summary> 860 /// </summary>
861 CTLCOLORDLG = 0x0136, 861 CTLCOLORDLG = 0x0136,
862   862  
863 /// <summary> 863 /// <summary>
864 /// The WM_CTLCOLORSCROLLBAR message is sent to the parent window of a scroll bar control when the control is about to 864 /// The WM_CTLCOLORSCROLLBAR message is sent to the parent window of a scroll bar control when the control is about to
865 /// be drawn. By responding to this message, the parent window can use the display context handle to set the background 865 /// be drawn. By responding to this message, the parent window can use the display context handle to set the background
866 /// color of the scroll bar control. 866 /// color of the scroll bar control.
867 /// </summary> 867 /// </summary>
868 CTLCOLORSCROLLBAR = 0x0137, 868 CTLCOLORSCROLLBAR = 0x0137,
869   869  
870 /// <summary> 870 /// <summary>
871 /// A static control, or an edit control that is read-only or disabled, sends the WM_CTLCOLORSTATIC message to its 871 /// A static control, or an edit control that is read-only or disabled, sends the WM_CTLCOLORSTATIC message to its
872 /// parent window when the control is about to be drawn. By responding to this message, the parent window can use the 872 /// parent window when the control is about to be drawn. By responding to this message, the parent window can use the
873 /// specified device context handle to set the text and background colors of the static control. 873 /// specified device context handle to set the text and background colors of the static control.
874 /// </summary> 874 /// </summary>
875 CTLCOLORSTATIC = 0x0138, 875 CTLCOLORSTATIC = 0x0138,
876   876  
877 /// <summary> 877 /// <summary>
878 /// Use WM_MOUSEFIRST to specify the first mouse message. Use the PeekMessage() Function. 878 /// Use WM_MOUSEFIRST to specify the first mouse message. Use the PeekMessage() Function.
879 /// </summary> 879 /// </summary>
880 MOUSEFIRST = 0x0200, 880 MOUSEFIRST = 0x0200,
881   881  
882 /// <summary> 882 /// <summary>
883 /// The WM_MOUSEMOVE message is posted to a window when the cursor moves. If the mouse is not captured, the message is 883 /// The WM_MOUSEMOVE message is posted to a window when the cursor moves. If the mouse is not captured, the message is
884 /// posted to the window that contains the cursor. Otherwise, the message is posted to the window that has captured the 884 /// posted to the window that contains the cursor. Otherwise, the message is posted to the window that has captured the
885 /// mouse. 885 /// mouse.
886 /// </summary> 886 /// </summary>
887 MOUSEMOVE = 0x0200, 887 MOUSEMOVE = 0x0200,
888   888  
889 /// <summary> 889 /// <summary>
890 /// The WM_LBUTTONDOWN message is posted when the user presses the left mouse button while the cursor is in the client 890 /// The WM_LBUTTONDOWN message is posted when the user presses the left mouse button while the cursor is in the client
891 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise, 891 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise,
892 /// the message is posted to the window that has captured the mouse. 892 /// the message is posted to the window that has captured the mouse.
893 /// </summary> 893 /// </summary>
894 LBUTTONDOWN = 0x0201, 894 LBUTTONDOWN = 0x0201,
895   895  
896 /// <summary> 896 /// <summary>
897 /// The WM_LBUTTONUP message is posted when the user releases the left mouse button while the cursor is in the client 897 /// The WM_LBUTTONUP message is posted when the user releases the left mouse button while the cursor is in the client
898 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise, 898 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise,
899 /// the message is posted to the window that has captured the mouse. 899 /// the message is posted to the window that has captured the mouse.
900 /// </summary> 900 /// </summary>
901 LBUTTONUP = 0x0202, 901 LBUTTONUP = 0x0202,
902   902  
903 /// <summary> 903 /// <summary>
904 /// The WM_LBUTTONDBLCLK message is posted when the user double-clicks the left mouse button while the cursor is in the 904 /// The WM_LBUTTONDBLCLK message is posted when the user double-clicks the left mouse button while the cursor is in the
905 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. 905 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor.
906 /// Otherwise, the message is posted to the window that has captured the mouse. 906 /// Otherwise, the message is posted to the window that has captured the mouse.
907 /// </summary> 907 /// </summary>
908 LBUTTONDBLCLK = 0x0203, 908 LBUTTONDBLCLK = 0x0203,
909   909  
910 /// <summary> 910 /// <summary>
911 /// The WM_RBUTTONDOWN message is posted when the user presses the right mouse button while the cursor is in the client 911 /// The WM_RBUTTONDOWN message is posted when the user presses the right mouse button while the cursor is in the client
912 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise, 912 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise,
913 /// the message is posted to the window that has captured the mouse. 913 /// the message is posted to the window that has captured the mouse.
914 /// </summary> 914 /// </summary>
915 RBUTTONDOWN = 0x0204, 915 RBUTTONDOWN = 0x0204,
916   916  
917 /// <summary> 917 /// <summary>
918 /// The WM_RBUTTONUP message is posted when the user releases the right mouse button while the cursor is in the client 918 /// The WM_RBUTTONUP message is posted when the user releases the right mouse button while the cursor is in the client
919 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise, 919 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise,
920 /// the message is posted to the window that has captured the mouse. 920 /// the message is posted to the window that has captured the mouse.
921 /// </summary> 921 /// </summary>
922 RBUTTONUP = 0x0205, 922 RBUTTONUP = 0x0205,
923   923  
924 /// <summary> 924 /// <summary>
925 /// The WM_RBUTTONDBLCLK message is posted when the user double-clicks the right mouse button while the cursor is in 925 /// The WM_RBUTTONDBLCLK message is posted when the user double-clicks the right mouse button while the cursor is in
926 /// the client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. 926 /// the client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor.
927 /// Otherwise, the message is posted to the window that has captured the mouse. 927 /// Otherwise, the message is posted to the window that has captured the mouse.
928 /// </summary> 928 /// </summary>
929 RBUTTONDBLCLK = 0x0206, 929 RBUTTONDBLCLK = 0x0206,
930   930  
931 /// <summary> 931 /// <summary>
932 /// The WM_MBUTTONDOWN message is posted when the user presses the middle mouse button while the cursor is in the 932 /// The WM_MBUTTONDOWN message is posted when the user presses the middle mouse button while the cursor is in the
933 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. 933 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor.
934 /// Otherwise, the message is posted to the window that has captured the mouse. 934 /// Otherwise, the message is posted to the window that has captured the mouse.
935 /// </summary> 935 /// </summary>
936 MBUTTONDOWN = 0x0207, 936 MBUTTONDOWN = 0x0207,
937   937  
938 /// <summary> 938 /// <summary>
939 /// The WM_MBUTTONUP message is posted when the user releases the middle mouse button while the cursor is in the client 939 /// The WM_MBUTTONUP message is posted when the user releases the middle mouse button while the cursor is in the client
940 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise, 940 /// area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. Otherwise,
941 /// the message is posted to the window that has captured the mouse. 941 /// the message is posted to the window that has captured the mouse.
942 /// </summary> 942 /// </summary>
943 MBUTTONUP = 0x0208, 943 MBUTTONUP = 0x0208,
944   944  
945 /// <summary> 945 /// <summary>
946 /// The WM_MBUTTONDBLCLK message is posted when the user double-clicks the middle mouse button while the cursor is in 946 /// The WM_MBUTTONDBLCLK message is posted when the user double-clicks the middle mouse button while the cursor is in
947 /// the client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. 947 /// the client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor.
948 /// Otherwise, the message is posted to the window that has captured the mouse. 948 /// Otherwise, the message is posted to the window that has captured the mouse.
949 /// </summary> 949 /// </summary>
950 MBUTTONDBLCLK = 0x0209, 950 MBUTTONDBLCLK = 0x0209,
951   951  
952 /// <summary> 952 /// <summary>
953 /// The WM_MOUSEWHEEL message is sent to the focus window when the mouse wheel is rotated. The DefWindowProc function 953 /// The WM_MOUSEWHEEL message is sent to the focus window when the mouse wheel is rotated. The DefWindowProc function
954 /// propagates the message to the window's parent. There should be no internal forwarding of the message, since 954 /// propagates the message to the window's parent. There should be no internal forwarding of the message, since
955 /// DefWindowProc propagates it up the parent chain until it finds a window that processes it. 955 /// DefWindowProc propagates it up the parent chain until it finds a window that processes it.
956 /// </summary> 956 /// </summary>
957 MOUSEWHEEL = 0x020A, 957 MOUSEWHEEL = 0x020A,
958   958  
959 /// <summary> 959 /// <summary>
960 /// The WM_XBUTTONDOWN message is posted when the user presses the first or second X button while the cursor is in the 960 /// The WM_XBUTTONDOWN message is posted when the user presses the first or second X button while the cursor is in the
961 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. 961 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor.
962 /// Otherwise, the message is posted to the window that has captured the mouse. 962 /// Otherwise, the message is posted to the window that has captured the mouse.
963 /// </summary> 963 /// </summary>
964 XBUTTONDOWN = 0x020B, 964 XBUTTONDOWN = 0x020B,
965   965  
966 /// <summary> 966 /// <summary>
967 /// The WM_XBUTTONUP message is posted when the user releases the first or second X button while the cursor is in the 967 /// The WM_XBUTTONUP message is posted when the user releases the first or second X button while the cursor is in the
968 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor. 968 /// client area of a window. If the mouse is not captured, the message is posted to the window beneath the cursor.
969 /// Otherwise, the message is posted to the window that has captured the mouse. 969 /// Otherwise, the message is posted to the window that has captured the mouse.
970 /// </summary> 970 /// </summary>
971 XBUTTONUP = 0x020C, 971 XBUTTONUP = 0x020C,
972   972  
973 /// <summary> 973 /// <summary>
974 /// The WM_XBUTTONDBLCLK message is posted when the user double-clicks the first or second X button while the cursor is 974 /// The WM_XBUTTONDBLCLK message is posted when the user double-clicks the first or second X button while the cursor is
975 /// in the client area of a window. If the mouse is not captured, the message is posted to the window beneath the 975 /// in the client area of a window. If the mouse is not captured, the message is posted to the window beneath the
976 /// cursor. Otherwise, the message is posted to the window that has captured the mouse. 976 /// cursor. Otherwise, the message is posted to the window that has captured the mouse.
977 /// </summary> 977 /// </summary>
978 XBUTTONDBLCLK = 0x020D, 978 XBUTTONDBLCLK = 0x020D,
979   979  
980 /// <summary> 980 /// <summary>
981 /// The WM_MOUSEHWHEEL message is sent to the focus window when the mouse's horizontal scroll wheel is tilted or 981 /// The WM_MOUSEHWHEEL message is sent to the focus window when the mouse's horizontal scroll wheel is tilted or
982 /// rotated. The DefWindowProc function propagates the message to the window's parent. There should be no internal 982 /// rotated. The DefWindowProc function propagates the message to the window's parent. There should be no internal
983 /// forwarding of the message, since DefWindowProc propagates it up the parent chain until it finds a window that 983 /// forwarding of the message, since DefWindowProc propagates it up the parent chain until it finds a window that
984 /// processes it. 984 /// processes it.
985 /// </summary> 985 /// </summary>
986 MOUSEHWHEEL = 0x020E, 986 MOUSEHWHEEL = 0x020E,
987   987  
988 /// <summary> 988 /// <summary>
989 /// Use WM_MOUSELAST to specify the last mouse message. Used with PeekMessage() Function. 989 /// Use WM_MOUSELAST to specify the last mouse message. Used with PeekMessage() Function.
990 /// </summary> 990 /// </summary>
991 MOUSELAST = 0x020E, 991 MOUSELAST = 0x020E,
992   992  
993 /// <summary> 993 /// <summary>
994 /// The WM_PARENTNOTIFY message is sent to the parent of a child window when the child window is created or destroyed, 994 /// The WM_PARENTNOTIFY message is sent to the parent of a child window when the child window is created or destroyed,
995 /// or when the user clicks a mouse button while the cursor is over the child window. When the child window is being 995 /// or when the user clicks a mouse button while the cursor is over the child window. When the child window is being
996 /// created, the system sends WM_PARENTNOTIFY just before the CreateWindow or CreateWindowEx function that creates the 996 /// created, the system sends WM_PARENTNOTIFY just before the CreateWindow or CreateWindowEx function that creates the
997 /// window returns. When the child window is being destroyed, the system sends the message before any processing to 997 /// window returns. When the child window is being destroyed, the system sends the message before any processing to
998 /// destroy the window takes place. 998 /// destroy the window takes place.
999 /// </summary> 999 /// </summary>
1000 PARENTNOTIFY = 0x0210, 1000 PARENTNOTIFY = 0x0210,
1001   1001  
1002 /// <summary> 1002 /// <summary>
1003 /// The WM_ENTERMENULOOP message informs an application's main window procedure that a menu modal loop has been 1003 /// The WM_ENTERMENULOOP message informs an application's main window procedure that a menu modal loop has been
1004 /// entered. 1004 /// entered.
1005 /// </summary> 1005 /// </summary>
1006 ENTERMENULOOP = 0x0211, 1006 ENTERMENULOOP = 0x0211,
1007   1007  
1008 /// <summary> 1008 /// <summary>
1009 /// The WM_EXITMENULOOP message informs an application's main window procedure that a menu modal loop has been exited. 1009 /// The WM_EXITMENULOOP message informs an application's main window procedure that a menu modal loop has been exited.
1010 /// </summary> 1010 /// </summary>
1011 EXITMENULOOP = 0x0212, 1011 EXITMENULOOP = 0x0212,
1012   1012  
1013 /// <summary> 1013 /// <summary>
1014 /// The WM_NEXTMENU message is sent to an application when the right or left arrow key is used to switch between the 1014 /// The WM_NEXTMENU message is sent to an application when the right or left arrow key is used to switch between the
1015 /// menu bar and the system menu. 1015 /// menu bar and the system menu.
1016 /// </summary> 1016 /// </summary>
1017 NEXTMENU = 0x0213, 1017 NEXTMENU = 0x0213,
1018   1018  
1019 /// <summary> 1019 /// <summary>
1020 /// The WM_SIZING message is sent to a window that the user is resizing. By processing this message, an application can 1020 /// The WM_SIZING message is sent to a window that the user is resizing. By processing this message, an application can
1021 /// monitor the size and position of the drag rectangle and, if needed, change its size or position. 1021 /// monitor the size and position of the drag rectangle and, if needed, change its size or position.
1022 /// </summary> 1022 /// </summary>
1023 SIZING = 0x0214, 1023 SIZING = 0x0214,
1024   1024  
1025 /// <summary> 1025 /// <summary>
1026 /// The WM_CAPTURECHANGED message is sent to the window that is losing the mouse capture. 1026 /// The WM_CAPTURECHANGED message is sent to the window that is losing the mouse capture.
1027 /// </summary> 1027 /// </summary>
1028 CAPTURECHANGED = 0x0215, 1028 CAPTURECHANGED = 0x0215,
1029   1029  
1030 /// <summary> 1030 /// <summary>
1031 /// The WM_MOVING message is sent to a window that the user is moving. By processing this message, an application can 1031 /// The WM_MOVING message is sent to a window that the user is moving. By processing this message, an application can
1032 /// monitor the position of the drag rectangle and, if needed, change its position. 1032 /// monitor the position of the drag rectangle and, if needed, change its position.
1033 /// </summary> 1033 /// </summary>
1034 MOVING = 0x0216, 1034 MOVING = 0x0216,
1035   1035  
1036 /// <summary> 1036 /// <summary>
1037 /// Notifies applications that a power-management event has occurred. 1037 /// Notifies applications that a power-management event has occurred.
1038 /// </summary> 1038 /// </summary>
1039 POWERBROADCAST = 0x0218, 1039 POWERBROADCAST = 0x0218,
1040   1040  
1041 /// <summary> 1041 /// <summary>
1042 /// Notifies an application of a change to the hardware configuration of a device or the computer. 1042 /// Notifies an application of a change to the hardware configuration of a device or the computer.
1043 /// </summary> 1043 /// </summary>
1044 DEVICECHANGE = 0x0219, 1044 DEVICECHANGE = 0x0219,
1045   1045  
1046 /// <summary> 1046 /// <summary>
1047 /// An application sends the WM_MDICREATE message to a multiple-document interface (MDI) client window to create an MDI 1047 /// An application sends the WM_MDICREATE message to a multiple-document interface (MDI) client window to create an MDI
1048 /// child window. 1048 /// child window.
1049 /// </summary> 1049 /// </summary>
1050 MDICREATE = 0x0220, 1050 MDICREATE = 0x0220,
1051   1051  
1052 /// <summary> 1052 /// <summary>
1053 /// An application sends the WM_MDIDESTROY message to a multiple-document interface (MDI) client window to close an MDI 1053 /// An application sends the WM_MDIDESTROY message to a multiple-document interface (MDI) client window to close an MDI
1054 /// child window. 1054 /// child window.
1055 /// </summary> 1055 /// </summary>
1056 MDIDESTROY = 0x0221, 1056 MDIDESTROY = 0x0221,
1057   1057  
1058 /// <summary> 1058 /// <summary>
1059 /// An application sends the WM_MDIACTIVATE message to a multiple-document interface (MDI) client window to instruct 1059 /// An application sends the WM_MDIACTIVATE message to a multiple-document interface (MDI) client window to instruct
1060 /// the client window to activate a different MDI child window. 1060 /// the client window to activate a different MDI child window.
1061 /// </summary> 1061 /// </summary>
1062 MDIACTIVATE = 0x0222, 1062 MDIACTIVATE = 0x0222,
1063   1063  
1064 /// <summary> 1064 /// <summary>
1065 /// An application sends the WM_MDIRESTORE message to a multiple-document interface (MDI) client window to restore an 1065 /// An application sends the WM_MDIRESTORE message to a multiple-document interface (MDI) client window to restore an
1066 /// MDI child window from maximized or minimized size. 1066 /// MDI child window from maximized or minimized size.
1067 /// </summary> 1067 /// </summary>
1068 MDIRESTORE = 0x0223, 1068 MDIRESTORE = 0x0223,
1069   1069  
1070 /// <summary> 1070 /// <summary>
1071 /// An application sends the WM_MDINEXT message to a multiple-document interface (MDI) client window to activate the 1071 /// An application sends the WM_MDINEXT message to a multiple-document interface (MDI) client window to activate the
1072 /// next or previous child window. 1072 /// next or previous child window.
1073 /// </summary> 1073 /// </summary>
1074 MDINEXT = 0x0224, 1074 MDINEXT = 0x0224,
1075   1075  
1076 /// <summary> 1076 /// <summary>
1077 /// An application sends the WM_MDIMAXIMIZE message to a multiple-document interface (MDI) client window to maximize an 1077 /// An application sends the WM_MDIMAXIMIZE message to a multiple-document interface (MDI) client window to maximize an
1078 /// MDI child window. The system resizes the child window to make its client area fill the client window. The system 1078 /// MDI child window. The system resizes the child window to make its client area fill the client window. The system
1079 /// places the child window's window menu icon in the rightmost position of the frame window's menu bar, and places the 1079 /// places the child window's window menu icon in the rightmost position of the frame window's menu bar, and places the
1080 /// child window's restore icon in the leftmost position. The system also appends the title bar text of the child 1080 /// child window's restore icon in the leftmost position. The system also appends the title bar text of the child
1081 /// window to that of the frame window. 1081 /// window to that of the frame window.
1082 /// </summary> 1082 /// </summary>
1083 MDIMAXIMIZE = 0x0225, 1083 MDIMAXIMIZE = 0x0225,
1084   1084  
1085 /// <summary> 1085 /// <summary>
1086 /// An application sends the WM_MDITILE message to a multiple-document interface (MDI) client window to arrange all of 1086 /// An application sends the WM_MDITILE message to a multiple-document interface (MDI) client window to arrange all of
1087 /// its MDI child windows in a tile format. 1087 /// its MDI child windows in a tile format.
1088 /// </summary> 1088 /// </summary>
1089 MDITILE = 0x0226, 1089 MDITILE = 0x0226,
1090   1090  
1091 /// <summary> 1091 /// <summary>
1092 /// An application sends the WM_MDICASCADE message to a multiple-document interface (MDI) client window to arrange all 1092 /// An application sends the WM_MDICASCADE message to a multiple-document interface (MDI) client window to arrange all
1093 /// its child windows in a cascade format. 1093 /// its child windows in a cascade format.
1094 /// </summary> 1094 /// </summary>
1095 MDICASCADE = 0x0227, 1095 MDICASCADE = 0x0227,
1096   1096  
1097 /// <summary> 1097 /// <summary>
1098 /// An application sends the WM_MDIICONARRANGE message to a multiple-document interface (MDI) client window to arrange 1098 /// An application sends the WM_MDIICONARRANGE message to a multiple-document interface (MDI) client window to arrange
1099 /// all minimized MDI child windows. It does not affect child windows that are not minimized. 1099 /// all minimized MDI child windows. It does not affect child windows that are not minimized.
1100 /// </summary> 1100 /// </summary>
1101 MDIICONARRANGE = 0x0228, 1101 MDIICONARRANGE = 0x0228,
1102   1102  
1103 /// <summary> 1103 /// <summary>
1104 /// An application sends the WM_MDIGETACTIVE message to a multiple-document interface (MDI) client window to retrieve 1104 /// An application sends the WM_MDIGETACTIVE message to a multiple-document interface (MDI) client window to retrieve
1105 /// the handle to the active MDI child window. 1105 /// the handle to the active MDI child window.
1106 /// </summary> 1106 /// </summary>
1107 MDIGETACTIVE = 0x0229, 1107 MDIGETACTIVE = 0x0229,
1108   1108  
1109 /// <summary> 1109 /// <summary>
1110 /// An application sends the WM_MDISETMENU message to a multiple-document interface (MDI) client window to replace the 1110 /// An application sends the WM_MDISETMENU message to a multiple-document interface (MDI) client window to replace the
1111 /// entire menu of an MDI frame window, to replace the window menu of the frame window, or both. 1111 /// entire menu of an MDI frame window, to replace the window menu of the frame window, or both.
1112 /// </summary> 1112 /// </summary>
1113 MDISETMENU = 0x0230, 1113 MDISETMENU = 0x0230,
1114   1114  
1115 /// <summary> 1115 /// <summary>
1116 /// The WM_ENTERSIZEMOVE message is sent one time to a window after it enters the moving or sizing modal loop. The 1116 /// The WM_ENTERSIZEMOVE message is sent one time to a window after it enters the moving or sizing modal loop. The
1117 /// window enters the moving or sizing modal loop when the user clicks the window's title bar or sizing border, or when 1117 /// window enters the moving or sizing modal loop when the user clicks the window's title bar or sizing border, or when
1118 /// the window passes the WM_SYSCOMMAND message to the DefWindowProc function and the wParam parameter of the message 1118 /// the window passes the WM_SYSCOMMAND message to the DefWindowProc function and the wParam parameter of the message
1119 /// specifies the SC_MOVE or SC_SIZE value. The operation is complete when DefWindowProc returns. 1119 /// specifies the SC_MOVE or SC_SIZE value. The operation is complete when DefWindowProc returns.
1120 /// The system sends the WM_ENTERSIZEMOVE message regardless of whether the dragging of full windows is enabled. 1120 /// The system sends the WM_ENTERSIZEMOVE message regardless of whether the dragging of full windows is enabled.
1121 /// </summary> 1121 /// </summary>
1122 ENTERSIZEMOVE = 0x0231, 1122 ENTERSIZEMOVE = 0x0231,
1123   1123  
1124 /// <summary> 1124 /// <summary>
1125 /// The WM_EXITSIZEMOVE message is sent one time to a window, after it has exited the moving or sizing modal loop. The 1125 /// The WM_EXITSIZEMOVE message is sent one time to a window, after it has exited the moving or sizing modal loop. The
1126 /// window enters the moving or sizing modal loop when the user clicks the window's title bar or sizing border, or when 1126 /// window enters the moving or sizing modal loop when the user clicks the window's title bar or sizing border, or when
1127 /// the window passes the WM_SYSCOMMAND message to the DefWindowProc function and the wParam parameter of the message 1127 /// the window passes the WM_SYSCOMMAND message to the DefWindowProc function and the wParam parameter of the message
1128 /// specifies the SC_MOVE or SC_SIZE value. The operation is complete when DefWindowProc returns. 1128 /// specifies the SC_MOVE or SC_SIZE value. The operation is complete when DefWindowProc returns.
1129 /// </summary> 1129 /// </summary>
1130 EXITSIZEMOVE = 0x0232, 1130 EXITSIZEMOVE = 0x0232,
1131   1131  
1132 /// <summary> 1132 /// <summary>
1133 /// Sent when the user drops a file on the window of an application that has registered itself as a recipient of 1133 /// Sent when the user drops a file on the window of an application that has registered itself as a recipient of
1134 /// dropped files. 1134 /// dropped files.
1135 /// </summary> 1135 /// </summary>
1136 DROPFILES = 0x0233, 1136 DROPFILES = 0x0233,
1137   1137  
1138 /// <summary> 1138 /// <summary>
1139 /// An application sends the WM_MDIREFRESHMENU message to a multiple-document interface (MDI) client window to refresh 1139 /// An application sends the WM_MDIREFRESHMENU message to a multiple-document interface (MDI) client window to refresh
1140 /// the window menu of the MDI frame window. 1140 /// the window menu of the MDI frame window.
1141 /// </summary> 1141 /// </summary>
1142 MDIREFRESHMENU = 0x0234, 1142 MDIREFRESHMENU = 0x0234,
1143   1143  
1144 /// <summary> 1144 /// <summary>
1145 /// Sent to an application when a window is activated. A window receives this message through its WindowProc function. 1145 /// Sent to an application when a window is activated. A window receives this message through its WindowProc function.
1146 /// </summary> 1146 /// </summary>
1147 IME_SETCONTEXT = 0x0281, 1147 IME_SETCONTEXT = 0x0281,
1148   1148  
1149 /// <summary> 1149 /// <summary>
1150 /// Sent to an application to notify it of changes to the IME window. A window receives this message through its 1150 /// Sent to an application to notify it of changes to the IME window. A window receives this message through its
1151 /// WindowProc function. 1151 /// WindowProc function.
1152 /// </summary> 1152 /// </summary>
1153 IME_NOTIFY = 0x0282, 1153 IME_NOTIFY = 0x0282,
1154   1154  
1155 /// <summary> 1155 /// <summary>
1156 /// Sent by an application to direct the IME window to carry out the requested command. The application uses this 1156 /// Sent by an application to direct the IME window to carry out the requested command. The application uses this
1157 /// message to control the IME window that it has created. To send this message, the application calls the SendMessage 1157 /// message to control the IME window that it has created. To send this message, the application calls the SendMessage
1158 /// function with the following parameters. 1158 /// function with the following parameters.
1159 /// </summary> 1159 /// </summary>
1160 IME_CONTROL = 0x0283, 1160 IME_CONTROL = 0x0283,
1161   1161  
1162 /// <summary> 1162 /// <summary>
1163 /// Sent to an application when the IME window finds no space to extend the area for the composition window. A window 1163 /// Sent to an application when the IME window finds no space to extend the area for the composition window. A window
1164 /// receives this message through its WindowProc function. 1164 /// receives this message through its WindowProc function.
1165 /// </summary> 1165 /// </summary>
1166 IME_COMPOSITIONFULL = 0x0284, 1166 IME_COMPOSITIONFULL = 0x0284,
1167   1167  
1168 /// <summary> 1168 /// <summary>
1169 /// Sent to an application when the operating system is about to change the current IME. A window receives this message 1169 /// Sent to an application when the operating system is about to change the current IME. A window receives this message
1170 /// through its WindowProc function. 1170 /// through its WindowProc function.
1171 /// </summary> 1171 /// </summary>
1172 IME_SELECT = 0x0285, 1172 IME_SELECT = 0x0285,
1173   1173  
1174 /// <summary> 1174 /// <summary>
1175 /// Sent to an application when the IME gets a character of the conversion result. A window receives this message 1175 /// Sent to an application when the IME gets a character of the conversion result. A window receives this message
1176 /// through its WindowProc function. 1176 /// through its WindowProc function.
1177 /// </summary> 1177 /// </summary>
1178 IME_CHAR = 0x0286, 1178 IME_CHAR = 0x0286,
1179   1179  
1180 /// <summary> 1180 /// <summary>
1181 /// Sent to an application to provide commands and request information. A window receives this message through its 1181 /// Sent to an application to provide commands and request information. A window receives this message through its
1182 /// WindowProc function. 1182 /// WindowProc function.
1183 /// </summary> 1183 /// </summary>
1184 IME_REQUEST = 0x0288, 1184 IME_REQUEST = 0x0288,
1185   1185  
1186 /// <summary> 1186 /// <summary>
1187 /// Sent to an application by the IME to notify the application of a key press and to keep message order. A window 1187 /// Sent to an application by the IME to notify the application of a key press and to keep message order. A window
1188 /// receives this message through its WindowProc function. 1188 /// receives this message through its WindowProc function.
1189 /// </summary> 1189 /// </summary>
1190 IME_KEYDOWN = 0x0290, 1190 IME_KEYDOWN = 0x0290,
1191   1191  
1192 /// <summary> 1192 /// <summary>
1193 /// Sent to an application by the IME to notify the application of a key release and to keep message order. A window 1193 /// Sent to an application by the IME to notify the application of a key release and to keep message order. A window
1194 /// receives this message through its WindowProc function. 1194 /// receives this message through its WindowProc function.
1195 /// </summary> 1195 /// </summary>
1196 IME_KEYUP = 0x0291, 1196 IME_KEYUP = 0x0291,
1197   1197  
1198 /// <summary> 1198 /// <summary>
1199 /// The WM_MOUSEHOVER message is posted to a window when the cursor hovers over the client area of the window for the 1199 /// The WM_MOUSEHOVER message is posted to a window when the cursor hovers over the client area of the window for the
1200 /// period of time specified in a prior call to TrackMouseEvent. 1200 /// period of time specified in a prior call to TrackMouseEvent.
1201 /// </summary> 1201 /// </summary>
1202 MOUSEHOVER = 0x02A1, 1202 MOUSEHOVER = 0x02A1,
1203   1203  
1204 /// <summary> 1204 /// <summary>
1205 /// The WM_MOUSELEAVE message is posted to a window when the cursor leaves the client area of the window specified in a 1205 /// The WM_MOUSELEAVE message is posted to a window when the cursor leaves the client area of the window specified in a
1206 /// prior call to TrackMouseEvent. 1206 /// prior call to TrackMouseEvent.
1207 /// </summary> 1207 /// </summary>
1208 MOUSELEAVE = 0x02A3, 1208 MOUSELEAVE = 0x02A3,
1209   1209  
1210 /// <summary> 1210 /// <summary>
1211 /// The WM_NCMOUSEHOVER message is posted to a window when the cursor hovers over the nonclient area of the window for 1211 /// The WM_NCMOUSEHOVER message is posted to a window when the cursor hovers over the nonclient area of the window for
1212 /// the period of time specified in a prior call to TrackMouseEvent. 1212 /// the period of time specified in a prior call to TrackMouseEvent.
1213 /// </summary> 1213 /// </summary>
1214 NCMOUSEHOVER = 0x02A0, 1214 NCMOUSEHOVER = 0x02A0,
1215   1215  
1216 /// <summary> 1216 /// <summary>
1217 /// The WM_NCMOUSELEAVE message is posted to a window when the cursor leaves the nonclient area of the window specified 1217 /// The WM_NCMOUSELEAVE message is posted to a window when the cursor leaves the nonclient area of the window specified
1218 /// in a prior call to TrackMouseEvent. 1218 /// in a prior call to TrackMouseEvent.
1219 /// </summary> 1219 /// </summary>
1220 NCMOUSELEAVE = 0x02A2, 1220 NCMOUSELEAVE = 0x02A2,
1221   1221  
1222 /// <summary> 1222 /// <summary>
1223 /// The WM_WTSSESSION_CHANGE message notifies applications of changes in session state. 1223 /// The WM_WTSSESSION_CHANGE message notifies applications of changes in session state.
1224 /// </summary> 1224 /// </summary>
1225 WTSSESSION_CHANGE = 0x02B1, 1225 WTSSESSION_CHANGE = 0x02B1,
1226   1226  
1227 TABLET_FIRST = 0x02c0, 1227 TABLET_FIRST = 0x02c0,
1228   1228  
1229 TABLET_LAST = 0x02df, 1229 TABLET_LAST = 0x02df,
1230   1230  
1231 /// <summary> 1231 /// <summary>
1232 /// An application sends a WM_CUT message to an edit control or combo box to delete (cut) the current selection, if 1232 /// An application sends a WM_CUT message to an edit control or combo box to delete (cut) the current selection, if
1233 /// any, in the edit control and copy the deleted text to the clipboard in CF_TEXT format. 1233 /// any, in the edit control and copy the deleted text to the clipboard in CF_TEXT format.
1234 /// </summary> 1234 /// </summary>
1235 CUT = 0x0300, 1235 CUT = 0x0300,
1236   1236  
1237 /// <summary> 1237 /// <summary>
1238 /// An application sends the WM_COPY message to an edit control or combo box to copy the current selection to the 1238 /// An application sends the WM_COPY message to an edit control or combo box to copy the current selection to the
1239 /// clipboard in CF_TEXT format. 1239 /// clipboard in CF_TEXT format.
1240 /// </summary> 1240 /// </summary>
1241 COPY = 0x0301, 1241 COPY = 0x0301,
1242   1242  
1243 /// <summary> 1243 /// <summary>
1244 /// An application sends a WM_PASTE message to an edit control or combo box to copy the current content of the 1244 /// An application sends a WM_PASTE message to an edit control or combo box to copy the current content of the
1245 /// clipboard to the edit control at the current caret position. Data is inserted only if the clipboard contains data 1245 /// clipboard to the edit control at the current caret position. Data is inserted only if the clipboard contains data
1246 /// in CF_TEXT format. 1246 /// in CF_TEXT format.
1247 /// </summary> 1247 /// </summary>
1248 PASTE = 0x0302, 1248 PASTE = 0x0302,
1249   1249  
1250 /// <summary> 1250 /// <summary>
1251 /// An application sends a WM_CLEAR message to an edit control or combo box to delete (clear) the current selection, if 1251 /// An application sends a WM_CLEAR message to an edit control or combo box to delete (clear) the current selection, if
1252 /// any, from the edit control. 1252 /// any, from the edit control.
1253 /// </summary> 1253 /// </summary>
1254 CLEAR = 0x0303, 1254 CLEAR = 0x0303,
1255   1255  
1256 /// <summary> 1256 /// <summary>
1257 /// An application sends a WM_UNDO message to an edit control to undo the last operation. When this message is sent to 1257 /// An application sends a WM_UNDO message to an edit control to undo the last operation. When this message is sent to
1258 /// an edit control, the previously deleted text is restored or the previously added text is deleted. 1258 /// an edit control, the previously deleted text is restored or the previously added text is deleted.
1259 /// </summary> 1259 /// </summary>
1260 UNDO = 0x0304, 1260 UNDO = 0x0304,
1261   1261  
1262 /// <summary> 1262 /// <summary>
1263 /// The WM_RENDERFORMAT message is sent to the clipboard owner if it has delayed rendering a specific clipboard format 1263 /// The WM_RENDERFORMAT message is sent to the clipboard owner if it has delayed rendering a specific clipboard format
1264 /// and if an application has requested data in that format. The clipboard owner must render data in the specified 1264 /// and if an application has requested data in that format. The clipboard owner must render data in the specified
1265 /// format and place it on the clipboard by calling the SetClipboardData function. 1265 /// format and place it on the clipboard by calling the SetClipboardData function.
1266 /// </summary> 1266 /// </summary>
1267 RENDERFORMAT = 0x0305, 1267 RENDERFORMAT = 0x0305,
1268   1268  
1269 /// <summary> 1269 /// <summary>
1270 /// The WM_RENDERALLFORMATS message is sent to the clipboard owner before it is destroyed, if the clipboard owner has 1270 /// The WM_RENDERALLFORMATS message is sent to the clipboard owner before it is destroyed, if the clipboard owner has
1271 /// delayed rendering one or more clipboard formats. For the content of the clipboard to remain available to other 1271 /// delayed rendering one or more clipboard formats. For the content of the clipboard to remain available to other
1272 /// applications, the clipboard owner must render data in all the formats it is capable of generating, and place the 1272 /// applications, the clipboard owner must render data in all the formats it is capable of generating, and place the
1273 /// data on the clipboard by calling the SetClipboardData function. 1273 /// data on the clipboard by calling the SetClipboardData function.
1274 /// </summary> 1274 /// </summary>
1275 RENDERALLFORMATS = 0x0306, 1275 RENDERALLFORMATS = 0x0306,
1276   1276  
1277 /// <summary> 1277 /// <summary>
1278 /// The WM_DESTROYCLIPBOARD message is sent to the clipboard owner when a call to the EmptyClipboard function empties 1278 /// The WM_DESTROYCLIPBOARD message is sent to the clipboard owner when a call to the EmptyClipboard function empties
1279 /// the clipboard. 1279 /// the clipboard.
1280 /// </summary> 1280 /// </summary>
1281 DESTROYCLIPBOARD = 0x0307, 1281 DESTROYCLIPBOARD = 0x0307,
1282   1282  
1283 /// <summary> 1283 /// <summary>
1284 /// The WM_DRAWCLIPBOARD message is sent to the first window in the clipboard viewer chain when the content of the 1284 /// The WM_DRAWCLIPBOARD message is sent to the first window in the clipboard viewer chain when the content of the
1285 /// clipboard changes. This enables a clipboard viewer window to display the new content of the clipboard. 1285 /// clipboard changes. This enables a clipboard viewer window to display the new content of the clipboard.
1286 /// </summary> 1286 /// </summary>
1287 DRAWCLIPBOARD = 0x0308, 1287 DRAWCLIPBOARD = 0x0308,
1288   1288  
1289 /// <summary> 1289 /// <summary>
1290 /// The WM_PAINTCLIPBOARD message is sent to the clipboard owner by a clipboard viewer window when the clipboard 1290 /// The WM_PAINTCLIPBOARD message is sent to the clipboard owner by a clipboard viewer window when the clipboard
1291 /// contains data in the CF_OWNERDISPLAY format and the clipboard viewer's client area needs repainting. 1291 /// contains data in the CF_OWNERDISPLAY format and the clipboard viewer's client area needs repainting.
1292 /// </summary> 1292 /// </summary>
1293 PAINTCLIPBOARD = 0x0309, 1293 PAINTCLIPBOARD = 0x0309,
1294   1294  
1295 /// <summary> 1295 /// <summary>
1296 /// The WM_VSCROLLCLIPBOARD message is sent to the clipboard owner by a clipboard viewer window when the clipboard 1296 /// The WM_VSCROLLCLIPBOARD message is sent to the clipboard owner by a clipboard viewer window when the clipboard
1297 /// contains data in the CF_OWNERDISPLAY format and an event occurs in the clipboard viewer's vertical scroll bar. The 1297 /// contains data in the CF_OWNERDISPLAY format and an event occurs in the clipboard viewer's vertical scroll bar. The
1298 /// owner should scroll the clipboard image and update the scroll bar values. 1298 /// owner should scroll the clipboard image and update the scroll bar values.
1299 /// </summary> 1299 /// </summary>
1300 VSCROLLCLIPBOARD = 0x030A, 1300 VSCROLLCLIPBOARD = 0x030A,
1301   1301  
1302 /// <summary> 1302 /// <summary>
1303 /// The WM_SIZECLIPBOARD message is sent to the clipboard owner by a clipboard viewer window when the clipboard 1303 /// The WM_SIZECLIPBOARD message is sent to the clipboard owner by a clipboard viewer window when the clipboard
1304 /// contains data in the CF_OWNERDISPLAY format and the clipboard viewer's client area has changed size. 1304 /// contains data in the CF_OWNERDISPLAY format and the clipboard viewer's client area has changed size.
1305 /// </summary> 1305 /// </summary>
1306 SIZECLIPBOARD = 0x030B, 1306 SIZECLIPBOARD = 0x030B,
1307   1307  
1308 /// <summary> 1308 /// <summary>
1309 /// The WM_ASKCBFORMATNAME message is sent to the clipboard owner by a clipboard viewer window to request the name of a 1309 /// The WM_ASKCBFORMATNAME message is sent to the clipboard owner by a clipboard viewer window to request the name of a
1310 /// CF_OWNERDISPLAY clipboard format. 1310 /// CF_OWNERDISPLAY clipboard format.
1311 /// </summary> 1311 /// </summary>
1312 ASKCBFORMATNAME = 0x030C, 1312 ASKCBFORMATNAME = 0x030C,
1313   1313  
1314 /// <summary> 1314 /// <summary>
1315 /// The WM_CHANGECBCHAIN message is sent to the first window in the clipboard viewer chain when a window is being 1315 /// The WM_CHANGECBCHAIN message is sent to the first window in the clipboard viewer chain when a window is being
1316 /// removed from the chain. 1316 /// removed from the chain.
1317 /// </summary> 1317 /// </summary>
1318 CHANGECBCHAIN = 0x030D, 1318 CHANGECBCHAIN = 0x030D,
1319   1319  
1320 /// <summary> 1320 /// <summary>
1321 /// The WM_HSCROLLCLIPBOARD message is sent to the clipboard owner by a clipboard viewer window. This occurs when the 1321 /// The WM_HSCROLLCLIPBOARD message is sent to the clipboard owner by a clipboard viewer window. This occurs when the
1322 /// clipboard contains data in the CF_OWNERDISPLAY format and an event occurs in the clipboard viewer's horizontal 1322 /// clipboard contains data in the CF_OWNERDISPLAY format and an event occurs in the clipboard viewer's horizontal
1323 /// scroll bar. The owner should scroll the clipboard image and update the scroll bar values. 1323 /// scroll bar. The owner should scroll the clipboard image and update the scroll bar values.
1324 /// </summary> 1324 /// </summary>
1325 HSCROLLCLIPBOARD = 0x030E, 1325 HSCROLLCLIPBOARD = 0x030E,
1326   1326  
1327 /// <summary> 1327 /// <summary>
1328 /// This message informs a window that it is about to receive the keyboard focus, giving the window the opportunity to 1328 /// This message informs a window that it is about to receive the keyboard focus, giving the window the opportunity to
1329 /// realize its logical palette when it receives the focus. 1329 /// realize its logical palette when it receives the focus.
1330 /// </summary> 1330 /// </summary>
1331 QUERYNEWPALETTE = 0x030F, 1331 QUERYNEWPALETTE = 0x030F,
1332   1332  
1333 /// <summary> 1333 /// <summary>
1334 /// The WM_PALETTEISCHANGING message informs applications that an application is going to realize its logical palette. 1334 /// The WM_PALETTEISCHANGING message informs applications that an application is going to realize its logical palette.
1335 /// </summary> 1335 /// </summary>
1336 PALETTEISCHANGING = 0x0310, 1336 PALETTEISCHANGING = 0x0310,
1337   1337  
1338 /// <summary> 1338 /// <summary>
1339 /// This message is sent by the OS to all top-level and overlapped windows after the window with the keyboard focus 1339 /// This message is sent by the OS to all top-level and overlapped windows after the window with the keyboard focus
1340 /// realizes its logical palette. 1340 /// realizes its logical palette.
1341 /// This message enables windows that do not have the keyboard focus to realize their logical palettes and update their 1341 /// This message enables windows that do not have the keyboard focus to realize their logical palettes and update their
1342 /// client areas. 1342 /// client areas.
1343 /// </summary> 1343 /// </summary>
1344 PALETTECHANGED = 0x0311, 1344 PALETTECHANGED = 0x0311,
1345   1345  
1346 /// <summary> 1346 /// <summary>
1347 /// The WM_HOTKEY message is posted when the user presses a hot key registered by the RegisterHotKey function. The 1347 /// The WM_HOTKEY message is posted when the user presses a hot key registered by the RegisterHotKey function. The
1348 /// message is placed at the top of the message queue associated with the thread that registered the hot key. 1348 /// message is placed at the top of the message queue associated with the thread that registered the hot key.
1349 /// </summary> 1349 /// </summary>
1350 HOTKEY = 0x0312, 1350 HOTKEY = 0x0312,
1351   1351  
1352 /// <summary> 1352 /// <summary>
1353 /// The WM_PRINT message is sent to a window to request that it draw itself in the specified device context, most 1353 /// The WM_PRINT message is sent to a window to request that it draw itself in the specified device context, most
1354 /// commonly in a printer device context. 1354 /// commonly in a printer device context.
1355 /// </summary> 1355 /// </summary>
1356 PRINT = 0x0317, 1356 PRINT = 0x0317,
1357   1357  
1358 /// <summary> 1358 /// <summary>
1359 /// The WM_PRINTCLIENT message is sent to a window to request that it draw its client area in the specified device 1359 /// The WM_PRINTCLIENT message is sent to a window to request that it draw its client area in the specified device
1360 /// context, most commonly in a printer device context. 1360 /// context, most commonly in a printer device context.
1361 /// </summary> 1361 /// </summary>
1362 PRINTCLIENT = 0x0318, 1362 PRINTCLIENT = 0x0318,
1363   1363  
1364 /// <summary> 1364 /// <summary>
1365 /// The WM_APPCOMMAND message notifies a window that the user generated an application command event, for example, by 1365 /// The WM_APPCOMMAND message notifies a window that the user generated an application command event, for example, by
1366 /// clicking an application command button using the mouse or typing an application command key on the keyboard. 1366 /// clicking an application command button using the mouse or typing an application command key on the keyboard.
1367 /// </summary> 1367 /// </summary>
1368 APPCOMMAND = 0x0319, 1368 APPCOMMAND = 0x0319,
1369   1369  
1370 /// <summary> 1370 /// <summary>
1371 /// The WM_THEMECHANGED message is broadcast to every window following a theme change event. Examples of theme change 1371 /// The WM_THEMECHANGED message is broadcast to every window following a theme change event. Examples of theme change
1372 /// events are the activation of a theme, the deactivation of a theme, or a transition from one theme to another. 1372 /// events are the activation of a theme, the deactivation of a theme, or a transition from one theme to another.
1373 /// </summary> 1373 /// </summary>
1374 THEMECHANGED = 0x031A, 1374 THEMECHANGED = 0x031A,
1375   1375  
1376 /// <summary> 1376 /// <summary>
1377 /// Sent when the contents of the clipboard have changed. 1377 /// Sent when the contents of the clipboard have changed.
1378 /// </summary> 1378 /// </summary>
1379 CLIPBOARDUPDATE = 0x031D, 1379 CLIPBOARDUPDATE = 0x031D,
1380   1380  
1381 /// <summary> 1381 /// <summary>
1382 /// The system will send a window the WM_DWMCOMPOSITIONCHANGED message to indicate that the availability of desktop 1382 /// The system will send a window the WM_DWMCOMPOSITIONCHANGED message to indicate that the availability of desktop
1383 /// composition has changed. 1383 /// composition has changed.
1384 /// </summary> 1384 /// </summary>
1385 DWMCOMPOSITIONCHANGED = 0x031E, 1385 DWMCOMPOSITIONCHANGED = 0x031E,
1386   1386  
1387 /// <summary> 1387 /// <summary>
1388 /// WM_DWMNCRENDERINGCHANGED is called when the non-client area rendering status of a window has changed. Only windows 1388 /// WM_DWMNCRENDERINGCHANGED is called when the non-client area rendering status of a window has changed. Only windows
1389 /// that have set the flag DWM_BLURBEHIND.fTransitionOnMaximized to true will get this message. 1389 /// that have set the flag DWM_BLURBEHIND.fTransitionOnMaximized to true will get this message.
1390 /// </summary> 1390 /// </summary>
1391 DWMNCRENDERINGCHANGED = 0x031F, 1391 DWMNCRENDERINGCHANGED = 0x031F,
1392   1392  
1393 /// <summary> 1393 /// <summary>
1394 /// Sent to all top-level windows when the colorization color has changed. 1394 /// Sent to all top-level windows when the colorization color has changed.
1395 /// </summary> 1395 /// </summary>
1396 DWMCOLORIZATIONCOLORCHANGED = 0x0320, 1396 DWMCOLORIZATIONCOLORCHANGED = 0x0320,
1397   1397  
1398 /// <summary> 1398 /// <summary>
1399 /// WM_DWMWINDOWMAXIMIZEDCHANGE will let you know when a DWM composed window is maximized. You also have to register 1399 /// WM_DWMWINDOWMAXIMIZEDCHANGE will let you know when a DWM composed window is maximized. You also have to register
1400 /// for this message as well. You'd have other windowd go opaque when this message is sent. 1400 /// for this message as well. You'd have other windowd go opaque when this message is sent.
1401 /// </summary> 1401 /// </summary>
1402 DWMWINDOWMAXIMIZEDCHANGE = 0x0321, 1402 DWMWINDOWMAXIMIZEDCHANGE = 0x0321,
1403   1403  
1404 /// <summary> 1404 /// <summary>
1405 /// Sent to request extended title bar information. A window receives this message through its WindowProc function. 1405 /// Sent to request extended title bar information. A window receives this message through its WindowProc function.
1406 /// </summary> 1406 /// </summary>
1407 GETTITLEBARINFOEX = 0x033F, 1407 GETTITLEBARINFOEX = 0x033F,
1408   1408  
1409 HANDHELDFIRST = 0x0358, 1409 HANDHELDFIRST = 0x0358,
1410   1410  
1411 HANDHELDLAST = 0x035F, 1411 HANDHELDLAST = 0x035F,
1412   1412  
1413 AFXFIRST = 0x0360, 1413 AFXFIRST = 0x0360,
1414   1414  
1415 AFXLAST = 0x037F, 1415 AFXLAST = 0x037F,
1416   1416  
1417 PENWINFIRST = 0x0380, 1417 PENWINFIRST = 0x0380,
1418   1418  
1419 PENWINLAST = 0x038F, 1419 PENWINLAST = 0x038F,
1420   1420  
1421 /// <summary> 1421 /// <summary>
1422 /// The WM_APP constant is used by applications to help define private messages, usually of the form WM_APP+X, where X 1422 /// The WM_APP constant is used by applications to help define private messages, usually of the form WM_APP+X, where X
1423 /// is an integer value. 1423 /// is an integer value.
1424 /// </summary> 1424 /// </summary>
1425 APP = 0x8000, 1425 APP = 0x8000,
1426   1426  
1427 /// <summary> 1427 /// <summary>
1428 /// The WM_USER constant is used by applications to help define private messages for use by private window classes, 1428 /// The WM_USER constant is used by applications to help define private messages for use by private window classes,
1429 /// usually of the form WM_USER+X, where X is an integer value. 1429 /// usually of the form WM_USER+X, where X is an integer value.
1430 /// </summary> 1430 /// </summary>
1431 USER = 0x0400, 1431 USER = 0x0400,
1432   1432  
1433 /// <summary> 1433 /// <summary>
1434 /// An application sends the WM_CPL_LAUNCH message to Windows Control Panel to request that a Control Panel application 1434 /// An application sends the WM_CPL_LAUNCH message to Windows Control Panel to request that a Control Panel application
1435 /// be started. 1435 /// be started.
1436 /// </summary> 1436 /// </summary>
1437 CPL_LAUNCH = USER + 0x1000, 1437 CPL_LAUNCH = USER + 0x1000,
1438   1438  
1439 /// <summary> 1439 /// <summary>
1440 /// The WM_CPL_LAUNCHED message is sent when a Control Panel application, started by the WM_CPL_LAUNCH message, has 1440 /// The WM_CPL_LAUNCHED message is sent when a Control Panel application, started by the WM_CPL_LAUNCH message, has
1441 /// closed. The WM_CPL_LAUNCHED message is sent to the window identified by the wParam parameter of the WM_CPL_LAUNCH 1441 /// closed. The WM_CPL_LAUNCHED message is sent to the window identified by the wParam parameter of the WM_CPL_LAUNCH
1442 /// message that started the application. 1442 /// message that started the application.
1443 /// </summary> 1443 /// </summary>
1444 CPL_LAUNCHED = USER + 0x1001, 1444 CPL_LAUNCHED = USER + 0x1001,
1445   1445  
1446 /// <summary> 1446 /// <summary>
1447 /// WM_SYSTIMER is a well-known yet still undocumented message. Windows uses WM_SYSTIMER for internal actions like 1447 /// WM_SYSTIMER is a well-known yet still undocumented message. Windows uses WM_SYSTIMER for internal actions like
1448 /// scrolling. 1448 /// scrolling.
1449 /// </summary> 1449 /// </summary>
1450 SYSTIMER = 0x118, 1450 SYSTIMER = 0x118,
1451   1451  
1452 /// <summary> 1452 /// <summary>
1453 /// The accessibility state has changed. 1453 /// The accessibility state has changed.
1454 /// </summary> 1454 /// </summary>
1455 HSHELL_ACCESSIBILITYSTATE = 11, 1455 HSHELL_ACCESSIBILITYSTATE = 11,
1456   1456  
1457 /// <summary> 1457 /// <summary>
1458 /// The shell should activate its main window. 1458 /// The shell should activate its main window.
1459 /// </summary> 1459 /// </summary>
1460 HSHELL_ACTIVATESHELLWINDOW = 3, 1460 HSHELL_ACTIVATESHELLWINDOW = 3,
1461   1461  
1462 /// <summary> 1462 /// <summary>
1463 /// The user completed an input event (for example, pressed an application command button on the mouse or an 1463 /// The user completed an input event (for example, pressed an application command button on the mouse or an
1464 /// application command key on the keyboard), and the application did not handle the WM_APPCOMMAND message generated by 1464 /// application command key on the keyboard), and the application did not handle the WM_APPCOMMAND message generated by
1465 /// that input. 1465 /// that input.
1466 /// If the Shell procedure handles the WM_COMMAND message, it should not call CallNextHookEx. See the Return Value 1466 /// If the Shell procedure handles the WM_COMMAND message, it should not call CallNextHookEx. See the Return Value
1467 /// section for more information. 1467 /// section for more information.
1468 /// </summary> 1468 /// </summary>
1469 HSHELL_APPCOMMAND = 12, 1469 HSHELL_APPCOMMAND = 12,
1470   1470  
1471 /// <summary> 1471 /// <summary>
1472 /// A window is being minimized or maximized. The system needs the coordinates of the minimized rectangle for the 1472 /// A window is being minimized or maximized. The system needs the coordinates of the minimized rectangle for the
1473 /// window. 1473 /// window.
1474 /// </summary> 1474 /// </summary>
1475 HSHELL_GETMINRECT = 5, 1475 HSHELL_GETMINRECT = 5,
1476   1476  
1477 /// <summary> 1477 /// <summary>
1478 /// Keyboard language was changed or a new keyboard layout was loaded. 1478 /// Keyboard language was changed or a new keyboard layout was loaded.
1479 /// </summary> 1479 /// </summary>
1480 HSHELL_LANGUAGE = 8, 1480 HSHELL_LANGUAGE = 8,
1481   1481  
1482 /// <summary> 1482 /// <summary>
1483 /// The title of a window in the task bar has been redrawn. 1483 /// The title of a window in the task bar has been redrawn.
1484 /// </summary> 1484 /// </summary>
1485 HSHELL_REDRAW = 6, 1485 HSHELL_REDRAW = 6,
1486   1486  
1487 /// <summary> 1487 /// <summary>
1488 /// The user has selected the task list. A shell application that provides a task list should return TRUE to prevent 1488 /// The user has selected the task list. A shell application that provides a task list should return TRUE to prevent
1489 /// Windows from starting its task list. 1489 /// Windows from starting its task list.
1490 /// </summary> 1490 /// </summary>
1491 HSHELL_TASKMAN = 7, 1491 HSHELL_TASKMAN = 7,
1492   1492  
1493 /// <summary> 1493 /// <summary>
1494 /// A top-level, unowned window has been created. The window exists when the system calls this hook. 1494 /// A top-level, unowned window has been created. The window exists when the system calls this hook.
1495 /// </summary> 1495 /// </summary>
1496 HSHELL_WINDOWCREATED = 1, 1496 HSHELL_WINDOWCREATED = 1,
1497   1497  
1498 /// <summary> 1498 /// <summary>
1499 /// A top-level, unowned window is about to be destroyed. The window still exists when the system calls this hook. 1499 /// A top-level, unowned window is about to be destroyed. The window still exists when the system calls this hook.
1500 /// </summary> 1500 /// </summary>
1501 HSHELL_WINDOWDESTROYED = 2, 1501 HSHELL_WINDOWDESTROYED = 2,
1502   1502  
1503 /// <summary> 1503 /// <summary>
1504 /// The activation has changed to a different top-level, unowned window. 1504 /// The activation has changed to a different top-level, unowned window.
1505 /// </summary> 1505 /// </summary>
1506 HSHELL_WINDOWACTIVATED = 4, 1506 HSHELL_WINDOWACTIVATED = 4,
1507   1507  
1508 /// <summary> 1508 /// <summary>
1509 /// A top-level window is being replaced. The window exists when the system calls this hook. 1509 /// A top-level window is being replaced. The window exists when the system calls this hook.
1510 /// </summary> 1510 /// </summary>
1511 HSHELL_WINDOWREPLACED = 13 1511 HSHELL_WINDOWREPLACED = 13
1512 } 1512 }
1513   1513  
1514 #endregion 1514 #endregion
1515   1515  
1516 #region Public Methods 1516 #region Public Methods
1517   1517  
1518 [DllImport("user32.dll")] 1518 [DllImport("user32.dll")]
1519 public static extern bool EnumWindows(EnumWindowsProc enumProc, IntPtr lParam); 1519 public static extern bool EnumWindows(EnumWindowsProc enumProc, IntPtr lParam);
1520   1520  
1521 [DllImport("user32.dll")] 1521 [DllImport("user32.dll")]
1522 [return: MarshalAs(UnmanagedType.Bool)] 1522 [return: MarshalAs(UnmanagedType.Bool)]
1523 public static extern bool GetWindowRect(IntPtr hWnd, out RECT lpRect); 1523 public static extern bool GetWindowRect(IntPtr hWnd, out RECT lpRect);
1524   1524  
1525 [DllImport("user32.dll", EntryPoint = "RegisterWindowMessageW", SetLastError = true)] 1525 [DllImport("user32.dll", EntryPoint = "RegisterWindowMessageW", SetLastError = true)]
1526 public static extern int RegisterWindowMessage(string lpString); 1526 public static extern int RegisterWindowMessage(string lpString);
1527   1527  
1528 [DllImport("user32.dll", SetLastError = true)] 1528 [DllImport("user32.dll", SetLastError = true)]
1529 public static extern bool RegisterShellHookWindow(IntPtr hWnd); 1529 public static extern bool RegisterShellHookWindow(IntPtr hWnd);
1530   1530  
1531 [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)] 1531 [DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
1532 public static extern int GetWindowText(IntPtr hWnd, StringBuilder lpString, int nMaxCount); 1532 public static extern int GetWindowText(IntPtr hWnd, StringBuilder lpString, int nMaxCount);
1533   1533  
1534 [DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)] 1534 [DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)]
1535 public static extern int GetWindowTextLength(IntPtr hWnd); 1535 public static extern int GetWindowTextLength(IntPtr hWnd);
1536   -  
1537 #endregion -  
1538   -  
1539 #region Private Methods -  
1540   1536  
1541 [DllImport("user32.dll", SetLastError = true)] 1537 [DllImport("user32.dll", SetLastError = true)]
1542 public static extern uint GetWindowThreadProcessId(IntPtr hWnd, out uint processId); 1538 public static extern uint GetWindowThreadProcessId(IntPtr hWnd, out uint processId);
1543   1539  
1544 [DllImport("user32.dll", SetLastError = true)] 1540 [DllImport("user32.dll", SetLastError = true)]
1545 public static extern bool MoveWindow(IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint); 1541 public static extern bool MoveWindow(IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint);
1546   1542  
1547 [DllImport("user32.dll", SetLastError = true)] 1543 [DllImport("user32.dll", SetLastError = true)]
1548 public static extern IntPtr FindWindow(string lpClassName, string lpWindowName); 1544 public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
1549   1545  
1550 #endregion 1546 #endregion
1551   1547  
1552 #region Nested Types 1548 #region Nested Types
1553   1549  
1554 [StructLayout(LayoutKind.Sequential)] 1550 [StructLayout(LayoutKind.Sequential)]
1555 public struct RECT 1551 public struct RECT
1556 { 1552 {
1557 public int Left; // x position of upper-left corner 1553 public int Left; // x position of upper-left corner
1558   1554  
1559 public int Top; // y position of upper-left corner 1555 public int Top; // y position of upper-left corner
1560   1556  
1561 public int Right; // x position of lower-right corner 1557 public int Right; // x position of lower-right corner
1562   1558  
1563 public int Bottom; // y position of lower-right corner 1559 public int Bottom; // y position of lower-right corner
1564 } 1560 }
1565   1561  
1566 #endregion 1562 #endregion
1567 } 1563 }
1568 } 1564 }
1569   1565  
1570
Generated by GNU Enscript 1.6.5.90.
1566
Generated by GNU Enscript 1.6.5.90.
1571   1567  
1572   1568  
1573   1569