Source: http://topic.csdn.net/t/20050526/17/4038042.html
VB. NET
Private Sub Tabcontrol1_drawitem ( Byval Sender As System. object, Byval E As System. Windows. Forms. drawitemeventargs) Handles Tabcontrol1.drawitem
' Me. tabcontrol1.drawmode = tabdrawmode. ownerdrawfixed 'must change the mode first (you can place this sentence on the load event)
Dim Tabarea As Rectangle
Dim Tabtextarea As Rectanglef
Tabarea = Tabcontrol1.gettabrect (E. Index)
Tabtextarea = Ctype (Tabcontrol1.gettabrect (E. index), rectanglef)
Dim G As Graphics = E. Graphics
Dim SF As Stringformat = New Stringformat ()
SF. linealignment = Stringalignment. Center
SF. Alignment = Stringalignment. Center
Dim Font As Font = Me . Tabcontrol1.font
Dim Brush As Solidbrush = New Solidbrush (color. Black)
G. drawstring (( Ctype (Sender, tabcontrol). tabpages (E. Index). Text, Font, brush, tabtextarea, SF)
End sub
C #. net
Private Void Tabcontrol1_drawitem ( Object Sender, drawitemeventargs e ){ // This. tabcontrol1.drawmode = tabdrawmode. ownerdrawfixed; // The mode must be changed first (you can place this sentence on the load event) Rectangle tabarea; rectanglef tabtextarea; tabarea = Tabcontrol1.gettabrect (E. Index); tabtextarea = (Rectanglef) tabcontrol1.gettabrect (E. Index); graphics g = E. graphics; stringformat SF = New Stringformat (); SF. linealignment =Stringalignment. Center; SF. Alignment = Stringalignment. Center; font = This . Tabcontrol1.font; solidbrush brush = New Solidbrush (color. Black); G. drawstring (tabcontrol) (sender). tabpages [E. Index]. Text, Font, brush, tabtextarea, SF );}