CB_SELECTSTRING

This message is sent by an application to search the list of a combo box for an item that begins with the characters in a specified string. If a matching item is found, it is selected and copied to the edit control.

At a Glance

Header file: Winuser.h
Windows CE versions: 1.0 and later

Syntax

CB_SELECTSTRING wParam = (WPARAM) indexStart;
lParam = (LPARAM)(LPCSTR) lpszSelect;

Parameters

indexStart

Specifies the zero-based index of the item preceding the first item to be searched. When the search reaches the bottom of the list, it continues from the top of the list back to the item specified by the indexStart parameter. If indexStart is –1, the entire list is searched from the beginning.

lpszSelect

Long pointer to the null-terminated string that contains the prefix to search for. The search is not case sensitive, so this string can contain any combination of uppercase and lowercase letters.

Return Values

The index of the selected item indicates that the string has been found. CB_ERR indicates an unsuccessful search; the current selection is not changed.

Remarks

Windows CE does not support owner draw.

A string is selected only if the characters from the starting point match the characters in the prefix string.

If you create the combo box with an owner-drawn style but without the CBS_HASSTRINGS style, what the CB_SELECTSTRING message does depends on whether you use the CBS_SORT style. If the CBS_SORT style is used, the system sends WM_COMPAREITEM messages to the owner of the combo box to determine which item matches the specified string. If you do not use the CBS_SORT style, CB_SELECTSTRING attempts to match the DWORD value against the value of the lpszSelect parameter.

See Also

CB_FINDSTRING, CB_FINDSTRINGEXACT, CB_SETCURSEL, WM_COMPAREITEM