Microsoft KB Archive/130692

{|
 * width="100%"|

PRB: Editing Labels in a TreeView Gives WM_COMMAND|IDOK Errors

 * }

Q130692

-

The information in this article applies to:


 * Microsoft Win32 Software Development Kit (SDK)

-

SYMPTOMS
WM_COMMAND|IDOK errors are received when you edit labels in a TreeView control.

CAUSE
The edit control created by the TreeView control can, and usually does, have an identifier of 1. This identifier is the same as IDOK. This can cause the parent window or dialog box to receive WM_COMMAND messages with an identifier of 1. Then the TreeView control passes on the EN_UPDATE and EN_CHANGE notifications from the edit control to the TreeView's parent.

This was a design decision made to meet system requirements and cannot be changed. If the parent window is going to perform some action in response to a command with an identifier of 1, this problem can occur. This problem is especially significant in dialog boxes that use the standard IDOK for a command button control.

RESOLUTION
Avoid using command and control identifiers with an identifier of 1 (IDOK). To be safe, the application should not use any identifiers less than 100 when used in conjunction with a TreeView control.

Another way to avoid this problem is to check the notification codes in the WM_COMMAND messages. Then respond only to the proper notification codes such as BN_CLICKED.

STATUS
This behavior is by design.

Additional query words:

Keywords : kbCtrl kbOSWinNT351 kbOSWinNT400 kbOSWin2000 kbTreeView kbGrpDSUser kbOSWin95 kbOSWin98

Issue type : kbprb

Technology : kbWin32SDKSearch kbAudDeveloper kbSDKSearch kbWin32sSearch