A work-around I used in similar situations is to place the misbehaving control inside a TPanel, and then disable the TPanel. Everything inside the TPanel then becomes disabled.
However, notice that when the TPanel is disabled and the controls inside it are effectively disabled too, the appearance of the controls may still be as if they were enabled. In those cases, besides making the parent control disabled, I also change the color of the child controls, for example from white to gray, to make it visually clear to the user that they are disabled.