Laden...

TabControl mit Buttons links? - Suche Control

Erstellt von Kovu vor 14 Jahren Letzter Beitrag vor 14 Jahren 1.997 Views
K
Kovu Themenstarter:in
488 Beiträge seit 2006
vor 14 Jahren
TabControl mit Buttons links? - Suche Control

Hi zusammen,

ich suche derzeit ein Control, welches ähnlich einem TabControl Funktioniert, allerdings mit Buttons auf der Linken Seite.
Also:

  • Buttons auf der Linken Seite
  • Beim Drücken öffnet sich ein Panel auf der rechten Seite welches die anderen überlappt.

Das ist ungefähr hier schon realisiert:
Einstellungsdialog (framesetlike)

Ich kenne Tomot aber und er sagte mir heute, dass seine Version total verbugt ist und leider auch keine Design-Time hat.

Kennt jemand ein Control welches meine Wünsche verwirklicht?

Da es nur ein kleines Feature ist, möchte ich nicht zuviel Zeit hineinstecken.

Das Leben is :ugly:

Verdammt, mach das Fenster zu, wer hat den Gamma-Wert so hoch gestellt?

T
381 Beiträge seit 2009
vor 14 Jahren

Das einfachste wäre wohl eine Toolbar mit ToolStripButtons und dann die Seitenaufrufe selber basteln. Dann haste jede Seite in einem UserControl welche du in ein zentrales Panel legst.
Hab ich auch mal für Horizontale Tabs genommen und sieht ganz gut aus, man kann es dynamisch hoch machen, Text / Bilder rein werfen und es somit auch recht gut customizen.

5.299 Beiträge seit 2008
vor 14 Jahren

das hier: TabControl als Basis für Assistenten haste gesehen?
Damit kann man die reiter verstecken. Dann noch ein Panel mit Buttons links daneben, welche die Tabs per Code selekten - ist das nicht, was dir vorschwebt?

Der frühe Apfel fängt den Wurm.

4.942 Beiträge seit 2008
vor 14 Jahren

Hallo Kovu,

was gefällt dir denn an dem normalen TabControl mit "Alignment = TabAlignment.Left" nicht?

Wenn die Reitertexte horizontal angezeigt werden sollen, dann kannst du dies mit selberzeichnen einfach lösen, s. vertikale Reiter im Windows XP Style ohne Schrift
(du müßtest dann nur die Zeile mit "format.FormatFlags = ..." entfernen).

Edit: die temp. Bitmap sowie das RotateFlip würden dann auch nicht benötigt, also in kurz:


public static void DrawString(string sText, Rectangle rect, bool bSelected, Font font, Graphics graphics)
{
    SolidBrush brush = new SolidBrush(Color.FromKnownColor(KnownColor.ControlText));
    StringFormat format = new StringFormat();

    RectangleF r = new RectangleF(g.VisibleClipBounds.Location, g.VisibleClipBounds.Size);
    //r.X -= bSelected? 5 : 5;
    //r.Y += bSelected? 6 : 2;

    graphics.DrawString(sText, font, brush, r, format);
}

Nur die Werte bzgl. "bSelected" müßte man dann noch anpassen...