This message is sent by the OS to determine the relative position of a new item in the sorted list of an owner-drawn combo box or list box. When the application adds a new item, Windows sends this message to the owner of a combo box or list box created with the CBS_SORT or LBS_SORT style.
At a Glance
Header file: | Winuser.h |
Windows CE versions: | 1.0 and later |
Syntax
WM_COMPAREITEM idCtl = wParam;
lpcis = (LPCOMPAREITEMSTRUCT) lParam;
Parameters
idCtl
Identifier of the control that sent the WM_COMPAREITEM message.
lpcis
Long pointer to a COMPAREITEMSTRUCT structure that contains the identifiers and application-supplied data for two items in the combo or list box.
Return Values
The return value indicates the relative position of the two items. It is one may be any of the following:
Value | Meaning |
–1 | Item 1 precedes item 2 in the sorted order. |
0 | Items 1 and 2 are equivalent in the sorted order. |
1 | Item 1 follows item 2 in the sorted order. |
Remarks
When the owner of an owner-drawn combo box or list box receives this message, the owner returns a value indicating which of the items specified by the COMPAREITEMSTRUCT structure will appear before the other. Typically, the system sends this message several times until it determines the exact position for the new item.
If a dialog box procedure handles this message, it should cast the desired return value to a BOOL and return the value directly. The DWL_MSGRESULT value set by the SetWindowLong function is ignored.