C # vertikales Label in einem Windows Forms
Ist es möglich, eine Beschriftung anzuzeigen, die vertikal in einem Windows Forms?
InformationsquelleAutor der Frage Toto | 2009-09-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ist es möglich, eine Beschriftung anzuzeigen, die vertikal in einem Windows Forms?
InformationsquelleAutor der Frage Toto | 2009-09-03
Du musst angemeldet sein, um einen Kommentar abzugeben.
Etiketten sind einfach, alle Sie tun müssen ist, überschreiben die
Paint
Ereignis und ziehen Sie den text vertikal. Bitte beachten Sie, daß GDI ist optimiert für das Zeichnen von text horizontal. Wenn Sie text drehen (auch wenn Sie drehen Sie durch ein Vielfaches von 90 Grad) sieht insbesondere noch schlimmer.Vielleicht das beste, was zu tun ist, ziehen Sie Ihren text (oder ein label sich selbst zu zeichnen), auf eine bitmap, dann zeigt das bitmap gedreht.
Einige C# - code für das zeichnen eine Benutzerdefinierte Steuerung mit vertikaler text. Beachten Sie, dass die ClearType-text-funktioniert NIE, wenn der text nicht horizontal:
InformationsquelleAutor der Antwort David Rutten
Erstellen Sie eine Klasse
myLabel
die rotieren Sie den Text auf jedem Winkel von Ihnen angegeben wurde.Kann es durch den code oder einfach nur ziehen Sie aus ToolBox
Nun dieses benutzerdefinierte Steuerelement in Ihrem Formular.
Setzen Sie unter Eigenschaften
InformationsquelleAutor der Antwort Javed Akram
Dehnte ich auf Javed Akram Antwort, um die Größe des widget (ich brauchte diese Funktion). Es funktioniert sowohl für positive und negative Winkel, die Art und Weise, dass Javed Staaten:
Hier ist der code:
InformationsquelleAutor der Antwort Buddy
Habe ich einen Weg gefunden, um es einfach zu tun, ohne hinzufügen von code oder Klassen zu Ihrem Projekt!
Beim erstellen Ihres Etiketts, fügen Sie einfach:
Dieser arbeitete für mich!
InformationsquelleAutor der Antwort Yor
Können Sie drehen von text anstelle des label-Steuerelements in der
OnPaint
Ereignis oderPaint
Methode:InformationsquelleAutor der Antwort Ali
Verwendeten Stücke von anderen
Jeremy
InformationsquelleAutor der Antwort Jeremy
2015-update auf einem alten post. Da die meisten der anderen Antworten scheinen zu stark beeinträchtigen, VS2013 ist designer in Bezug auf Benutzerfreundlichkeit, würde ich vorschlagen, diese Lösung:
http://www.codeproject.com/Articles/19774/Extended-Vertical-Label-Control-in-C-NET
InformationsquelleAutor der Antwort 0x25b3
Es absolut funktioniert. Ich fand es net und wenig verändert
InformationsquelleAutor der Antwort Nasuh Levent YILDIZ
Ich nur deaktiviert die AutoSize-Eigenschaft und Größe dem Etikett vertikal an. Ich machte das label breit genug für nur ein Zeichen. Dann wechselte ich TextAlign auf center, um die Ausrichtung besser Aussehen. Dies funktionierte großartig für mich.
InformationsquelleAutor der Antwort JasonD