Entwickler-Ecke

WinForms - TabControl Farbe oder kein Rahmen


Locutus24 - Do 02.04.20 12:38
Titel: TabControl Farbe oder kein Rahmen
Ich habe mir ein UserControl gebastelt, darin gibt es auch ein TabControl.

Allerdings sieht das ganze mit Rahmen nicht gut aus, weshalb ich diesen entweder entfernen oder schwarz färben möchte.

Diverse Experimente (von Google Suche) mit _DrawItem haben leider keinen Effekt gehabt.

Vielleicht könnt ihr mir da ja weiterhelfen.

Danke schon einmal im Voraus


Th69 - Do 02.04.20 14:18

Hallo und :welcome:

du meinst so wie in How can I change the border color and size of a TabControl? [https://stackoverflow.com/questions/5077891/how-can-i-change-the-border-color-and-size-of-a-tabcontrol], also die Rahmenfarbe des gesamten Controls? So wie in dem Link auch geschrieben, gibt es dafür keine Einstellung - es wird immer die SystemColors.InactiveBorder-Farbe dafür verwendet.
Mit DrawItem kann man nur die einzelnen TabPage-Header selber zeichnen (weder den gesamten Rahmen noch den Client-Bereich).

Schau dir aber mal den Artikel A .NET Flat TabControl (CustomDraw) [https://www.codeproject.com/Articles/12185/A-NET-Flat-TabControl-CustomDraw] an, wo dann das gesamte Control selber gezeichnet wird.

Interessant ist auch noch der Artikel Painting Your Own Tabs - Second Edition [https://www.codeproject.com/Articles/91387/Painting-Your-Own-Tabs-Second-Edition], falls du auch die Header sowie den generellen Style ändern möchtest.