How to make TabPage header text bold?

I have a tabControl application in C # Windows. It has several tabs. Does anyone know how to make TabPage text become bold?

+4
source share
2 answers
private void tabControl1_DrawItem(object sender, DrawItemEventArgs e) { Graphics g = e.Graphics; Brush _TextBrush; // Get the item from the collection. TabPage _TabPage = tabControl1.TabPages[e.Index]; // Get the real bounds for the tab rectangle. Rectangle _TabBounds = tabControl1.GetTabRect(e.Index); if (e.State == DrawItemState.Selected) { // Draw a different background color, and don't paint a focus rectangle. _TextBrush = new SolidBrush(Color.Blue); g.FillRectangle(Brushes.Gray, e.Bounds); } else { _TextBrush = new System.Drawing.SolidBrush(e.ForeColor); // e.DrawBackground(); } // Use our own font. Because we CAN. Font _TabFont = new Font(e.Font.FontFamily, (float)9, FontStyle.Bold, GraphicsUnit.Pixel); //Font fnt = new Font(e.Font.FontFamily, (float)7.5, FontStyle.Bold); // Draw string. Center the text. StringFormat _StringFlags = new StringFormat(); _StringFlags.Alignment = StringAlignment.Center; _StringFlags.LineAlignment = StringAlignment.Center; g.DrawString(tabControl1.TabPages[e.Index].Text, _TabFont, _TextBrush, _TabBounds, new StringFormat(_StringFlags)); } 
+9
source

In Winforms, you can change the DrawMode and draw all the labels on yourself.

See MSDN Example .

+3
source

Source: https://habr.com/ru/post/1302236/


All Articles