Moin!
Ich möchte gerne die Farbe von einen Tabcontrol Register ändern!
Habe bereits vieles ausprobiert.
Ich habe einen Code, der aber alle Register Färbt, aber ich möchte ein bestimmtes auswählen.
Zum Beispiel Register Nr. 1 soll Rot erscheinen.
Ich hoffe das ich das Problem gut beschreiben habe.
Freue mich auf eure Hilfe!
BIG THX
Ich möchte gerne die Farbe von einen Tabcontrol Register ändern!
Habe bereits vieles ausprobiert.
Ich habe einen Code, der aber alle Register Färbt, aber ich möchte ein bestimmtes auswählen.
Zum Beispiel Register Nr. 1 soll Rot erscheinen.
Ich hoffe das ich das Problem gut beschreiben habe.
Freue mich auf eure Hilfe!
BIG THX
VB.NET-Quellcode
- Private Sub TabControl1_DrawItem(ByVal sender As Object, ByVal e As System.Windows.Forms.DrawItemEventArgs) Handles TabControl1.DrawItem
- Dim g As Graphics = e.Graphics
- Dim tp As TabPage = TabControl1.TabPages(e.Index)
- Dim br As Brush
- Dim sf As New StringFormat
- Dim r As New RectangleF(e.Bounds.X, e.Bounds.Y + 2, e.Bounds.Width, e.Bounds.Height - 2)
- sf.Alignment = StringAlignment.Center
- Dim strTitle As String = tp.Text
- 'If the current index is the Selected Index, change the color
- If TabControl1.SelectedIndex = e.Index Then
- 'this is the background color of the tabpage header
- br = New SolidBrush(Color.LightSteelBlue) ' chnge to your choice
- g.FillRectangle(br, e.Bounds)
- 'this is the foreground color of the text in the tab header
- br = New SolidBrush(Color.Black) ' change to your choice
- g.DrawString(strTitle, TabControl1.Font, br, r, sf)
- Else
- 'these are the colors for the unselected tab pages
- br = New SolidBrush(Color.LightBlue) ' Change this to your preference
- g.FillRectangle(br, e.Bounds)
- br = New SolidBrush(Color.Black)
- g.DrawString(strTitle, TabControl1.Font, br, r, sf)
- End If
- End Sub
Visual Basic.NET
MS-SQL
MS-SQL