TabControl.Alignment 属性


获取或设置选项卡在其中对齐的控件区域(例如,顶部边缘)。Gets or sets the area of the control (for example, along the top) where the tabs are aligned.

 property System::Windows::Forms::TabAlignment Alignment { System::Windows::Forms::TabAlignment get(); void set(System::Windows::Forms::TabAlignment value); };
public System.Windows.Forms.TabAlignment Alignment { get; set; }
member this.Alignment : System.Windows.Forms.TabAlignment with get, set
Public Property Alignment As TabAlignment


TabAlignment 值之一。One of the TabAlignment values. 默认值为 TopThe default is Top.


属性值不是有效的 TabAlignment 值。The property value is not a valid TabAlignment value.


下面的代码示例创建一个TabControl具有三TabPage个对象的。The following code example creates a TabControl with three TabPage objects. 将属性设置为LefttabControl1这将在左侧放置选项卡。 AlignmentThe Alignment property is set to Left, which positions the tabs of tabControl1 on the left side.

using namespace System::Drawing;
using namespace System::Windows::Forms;
public ref class Form1: public Form
   TabControl^ tabControl1;
   TabPage^ tabPage1;
   TabPage^ tabPage2;
   TabPage^ tabPage3;
   void MyTabs()
      this->tabControl1 = gcnew TabControl;
      this->tabPage1 = gcnew TabPage;
      this->tabPage2 = gcnew TabPage;
      this->tabPage3 = gcnew TabPage;
      // Positions tabs on the left side of tabControl1.
      this->tabControl1->Alignment = System::Windows::Forms::TabAlignment::Left;
      array<Control^>^tabControls = {this->tabPage1,this->tabPage2,this->tabPage3};
      this->tabControl1->Controls->AddRange( tabControls );
      this->tabControl1->Location = Point(16,24);
      this->tabControl1->SelectedIndex = 0;
      this->tabControl1->Size = System::Drawing::Size( 248, 232 );
      this->tabControl1->TabIndex = 0;
      this->tabPage1->TabIndex = 0;
      this->tabPage2->TabIndex = 1;
      this->tabPage3->TabIndex = 2;
      this->Size = System::Drawing::Size( 300, 300 );
      array<Control^>^formControls = {this->tabControl1};
      this->Controls->AddRange( formControls );



int main()
   Application::Run( gcnew Form1 );

using System.Drawing;
using System.Windows.Forms;

public class Form1 : Form
    private TabControl tabControl1;
    private TabPage tabPage1;
    private TabPage tabPage2;
    private TabPage tabPage3;

    private void MyTabs()
        this.tabControl1 = new TabControl();
        this.tabPage1 = new TabPage();
        this.tabPage2 = new TabPage();
        this.tabPage3 = new TabPage();

        // Positions tabs on the left side of tabControl1.
        this.tabControl1.Alignment = System.Windows.Forms.TabAlignment.Left;

        this.tabControl1.Controls.AddRange(new Control[] {
        this.tabControl1.Location = new Point(16, 24);
        this.tabControl1.SelectedIndex = 0;
        this.tabControl1.Size = new Size(248, 232);
        this.tabControl1.TabIndex = 0;

        this.tabPage1.TabIndex = 0;
        this.tabPage2.TabIndex = 1;
        this.tabPage3.TabIndex = 2;

        this.Size = new Size(300,300);
        this.Controls.AddRange(new Control[] {

    public Form1()

    static void Main() 
        Application.Run(new Form1());
Imports System.Drawing
Imports System.Windows.Forms

Public Class Form1
    Inherits Form
    Private tabControl1 As TabControl
    Private tabPage1 As TabPage
    Private tabPage2 As TabPage
    Private tabPage3 As TabPage

    Private Sub MyTabs()
        Me.tabControl1 = New TabControl()
        Me.tabPage1 = New TabPage()
        Me.tabPage2 = New TabPage()
        Me.tabPage3 = New TabPage()

        ' Positions tabs on the left side of tabControl1.
        Me.tabControl1.Alignment = System.Windows.Forms.TabAlignment.Left

        Me.tabControl1.Controls.AddRange(New Control() {Me.tabPage1, Me.tabPage2, Me.tabPage3})
        Me.tabControl1.Location = New Point(16, 24)
        Me.tabControl1.SelectedIndex = 0
        Me.tabControl1.Size = New Size(248, 232)
        Me.tabControl1.TabIndex = 0

        Me.tabPage1.TabIndex = 0
        Me.tabPage2.TabIndex = 1
        Me.tabPage3.TabIndex = 2

        Me.Size = New Size(300, 300)
        Me.Controls.AddRange(New Control() {Me.tabControl1})
    End Sub

    Public Sub New()
    End Sub

    Shared Sub Main()
        Application.Run(New Form1())
    End Sub
End Class


Left Right当属性设置为或时, Multiline属性将自动设置为trueAlignmentWhen the Alignment property is set to Left or Right, the Multiline property is automatically set to true.

如果将Appearance属性设置为FlatButtons,则它仅在Alignment属性设置为Top时才会显示。When you set the Appearance property to FlatButtons, it only appears as such when the Alignment property is set to Top. 否则,该Appearance属性将显示为,前提是Buttons设置为值。Otherwise, the Appearance property displays as if set to the Buttons value.

Appearance属性设置为Buttons时,还必须将Alignment属性设置为Top ,以使按钮正确显示。When you set the Appearance property to Buttons, you must also set the Alignment property to Top so that the buttons display correctly.


Appearance属性设置为Buttons时,还必须将Alignment属性设置为Top ,以便选项卡页的内容正确显示。When you set the Appearance property to Buttons, you must also set the Alignment property to Top so that the tab page contents display correctly. 此外,如果启用了视觉样式,并Alignment将属性设置为以外的值Top,则选项卡内容可能不会正确呈现。Additionally, when visual styles are enabled, and the Alignment property is set to a value other than Top, the tab contents may not render correctly.