From the Delphi XE documentation:-
Note: OnChange only occurs in response to user actions. Changing the Text property programmatically does not trigger an OnChange event.
Are there any other events available for TComboBox that are raised when any change happens (by the user or programmatically)? When changing the ItemIndex property of the TComboBox no event is raised.
The combo box control is sent a
CM_TEXTCHANGEDwhen the text is modified. The VCL control chooses not to surface an event here, but you could. There’s many ways to do so. Here I illustrate the quick and dirty interposer class:Naturally you would want to do this in a less hacky way in your production code.