Wenn Sie SysInternals' ZoomIt Dienstprogramm verwenden, können Sie sehen, dass dies einfach zwei Zeilen ist. Ein dunkelgrauer über einem weißen. Zeichnen von Linien ist einfach genug mit Graphics.DrawLine(), Sie müssen nur sicherstellen, dass Sie eine dunkle Farbe auswählen, die gut mit der BackColor des Formulars arbeiten. Das ist nicht immer Schlachtschiffgrau, wenn der Benutzer ein anderes Thema auswählt. Das lässt den GroupBox-Trick flach fallen.
Dieser Beispielcode ist betriebsbereit:
protected override void OnPaint(PaintEventArgs e) {
Color back = this.BackColor;
Color dark = Color.FromArgb(back.R >> 1, back.G >> 1, back.B >> 1);
int y = button1.Bottom + 20;
using (var pen = new Pen(dark)) {
e.Graphics.DrawLine(pen, 30, y, this.ClientSize.Width - 30, y);
}
e.Graphics.DrawLine(Pens.White, 30, y+1, this.ClientSize.Width - 30, y+1);
}
Beachten Sie die Verwendung ein button1 in diesem Code dort sicherstellen, dass die Linie in der richtigen Höhe gezogen wird, selbst wenn das Formular neu skaliert wird. Wählen Sie Ihr eigenes Steuerelement als Referenz für die Linie.
Hallo @Tor, ich habe das einmal versucht, aber wenn Benutzer Skins in Windows verwendet, kann dies die Zeile sehr seltsam aussehen lassen !!! Ich suche und Alternative zu dieser Technik. – RHaguiuda