使用 VB.net 表单的 Tabcontrol 和文本放置

Tabcontrol and Text Placement using VB.net Form

我正在尝试构建一个左侧有选项卡的应用程序,但我希望文本是水平的而不是垂直的。我看过很多关于 WPF 和 C# 的论坛帖子,但没有什么特定于 VB.net。

是否有特定的 属性 我可以用来将文本从垂直更改为水平?我如何实施此类更改?我知道这似乎是新手喜欢问的问题,但我觉得我碰壁了。任何帮助将不胜感激。

我能够在 Microsoft 的 .Net 资源页面上找到以下内容。

https://docs.microsoft.com/en-us/dotnet/framework/winforms/controls/how-to-display-side-aligned-tabs-with-tabcontrol

我现在唯一想做的就是在文本中添加填充,使其不在对话框的右侧。如果有人有任何想法,请指教。

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 _TextBrush As Brush

' Get the item from the collection.
Dim _TabPage As TabPage = TabControl1.TabPages(e.Index)

' Get the real bounds for the tab rectangle.
Dim _TabBounds As Rectangle = TabControl1.GetTabRect(e.Index)

If (e.State = DrawItemState.Selected) Then
    ' Draw a different background color, and don't paint a focus rectangle.
    _TextBrush = New SolidBrush(Color.Red)
    g.FillRectangle(Brushes.Gray, e.Bounds)
Else
    _TextBrush = New System.Drawing.SolidBrush(e.ForeColor)
    e.DrawBackground()
End If

' Use our own font.
Dim _TabFont As New Font("Arial", 10.0, FontStyle.Bold, GraphicsUnit.Pixel)

' Draw string. Center the text.
Dim _StringFlags As New StringFormat()
_StringFlags.Alignment = StringAlignment.Center
_StringFlags.LineAlignment = StringAlignment.Center
g.DrawString(_TabPage.Text, _TabFont, _TextBrush, _TabBounds, New StringFormat(_StringFlags))
End Sub