ComboBox автоматически устанавливает высоту элемента управления, и, как вы обнаружили, попытка установить собственную высоту фактически влияет на высоту раскрывающегося списка.
Чтобы получить реальную высоту элемента управления (чтобы вы могли изменить размеры других элементов управления), вы можете использовать GetWindowRect:
RECT rc;
GetWindowRect(hWndCombo, &rc);
int iComboHeight = rc.bottom - rc.top;
Я не знаю хорошего способа изменить высоту самого элемента управления Combo, и, честно говоря, я не верю, что это возможно, по крайней мере, без большого количества подклассов. Из-за этого я реализовал свой собственный элемент управления в стиле комбо.
Хотя это, вероятно, не поможет, вам также может понравиться функция GetComboBoxInfo (), чтобы узнать, предоставляет ли она какую-либо полезную информацию.