While playing with this, dropping the list at runtime I've also found another issue, the size of the window is longer than the actual list at times, depending of the overall size of the window.
For example I have 4 items in the list, I need to set the height of the ComboBox to 87 so that the list will be fully viewed without any scrollbar.
If the drop down is not at the correct multiple value the window for the control is actually taller than the list.. so what happens is if you size your form to cover this control then enlarge the form to make it show there is a black band at the bottom of the list because it belongs to the Combobo but never gets painted.
If you implement the OnMouseDown event and place a test beep in there, you can click on this black band and it receives messages. so it is part of the combobox but the list it self is not fully covering it.
I've also seen this with the other styles of the combobox, the list has a background more than the list itself.. it causes exclusions on the parent control.
Just drop a combo on the form, set it to csSimple, and place a button on the form so that you can size the box tall at runtime, you'll see the box listed .. Now shrink the form to cover the list box and then expand the form to reshow the list box. You should now see the blank band at the bottom of the list box...
Experimenting with the Height property I can find the correct multiple that fixes it. but I should not need to do this and since this is also effecting the other styles of combobox I think this issue needs to be addressed.