if you are doing something in code and you expect it to trigger the Onchange event then
you must adjust your code to call the event directly yourself.
Many events in such controls that get triggered via user input activity should not be
getting triggered via your code.
Reason, for one its Delphi compatible and secondly there is a reason for this..
I'll layout why..
In many cases where a event gets called the code within the event could cause a retrigger
of that same event and thus causing a loop!
Also, you can not determine if user cause the event or your code did it.
so if you can confirm that user activity does not trigger the event then you have a
reportable bug, otherwise, its working as it should be..
If you need to call that even when you do something in code you can do so directly with
your code.
Also, I think there is a flag setting in the options now to support the older way.
I believe this was one of the few controls that were correct!