PRB: Editing Labels in a TreeView Gives WM_COMMAND|IDOK Errors
Article ID: 130692
Article Last Modified on 7/11/2005
APPLIES TO
- Microsoft Platform Software Development Kit-January 2000 Edition
This article was previously published under Q130692
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.
Keywords: kbtreeview kbprb kbctrl KB130692