Setting the font through code and placing that code in controls FirstDraw event should fix this problem. First Draw event occurs right after the control has been painted for the first time because some properties base their data on how the control draws itself (font information). This data will not be accurate until the control draws itself at least once. If in your version of control you don't have First Draw event then use a timer to cause a slight delay. You could put the code for setting the font inside a timer. Enable the timer in the initialize event and a line of code at the end of the timer event, which disables it.