Partager via


TabControl.DrawMode Propriété

Définition

Obtient ou définit le dessin des onglets du contrôle.

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

Valeur de propriété

Une des valeurs de l'objet TabDrawMode. La valeur par défaut est Normal.

Exceptions

La valeur de propriété n'est pas une valeur TabDrawMode valide.

Exemples

L’exemple de code suivant crée un TabControl avec un TabPage. Cet exemple montre comment définir la DrawMode propriété sur OwnerDrawFixed, qui spécifie que les tabulations sont dessinées par l’objet Form1parent . La valeur OwnerDrawFixed permet également d’accéder à l’événement DrawItem , qui, dans cet exemple, est utilisé pour dessiner myTabRect sur l’onglet tabPage1 .

Utilisez les espaces de System.Drawing noms et System.Windows.Forms avec cet exemple.

using namespace System::Drawing;
using namespace System::Windows::Forms;
public ref class Form1: public Form
{
private:
   TabControl^ tabControl1;
   Rectangle myTabRect;

public:
   Form1()
   {
      tabControl1 = gcnew TabControl;
      TabPage^ tabPage1 = gcnew TabPage;
      
      // Sets the tabs to be drawn by the parent window Form1.
      // OwnerDrawFixed allows access to DrawItem.
      tabControl1->DrawMode = TabDrawMode::OwnerDrawFixed;
      tabControl1->Controls->Add( tabPage1 );
      tabControl1->Location = Point(25,25);
      tabControl1->Size = System::Drawing::Size( 250, 250 );
      tabPage1->TabIndex = 0;
      myTabRect = tabControl1->GetTabRect( 0 );
      ClientSize = System::Drawing::Size( 300, 300 );
      Controls->Add( tabControl1 );
      tabControl1->DrawItem += gcnew DrawItemEventHandler( this, &Form1::OnDrawItem );
   }


private:
   void OnDrawItem( Object^ /*sender*/, DrawItemEventArgs^ e )
   {
      Graphics^ g = e->Graphics;
      Pen^ p = gcnew Pen( Color::Blue );
      g->DrawRectangle( p, myTabRect );
   }

};

int main()
{
   Application::Run( gcnew Form1 );
}
using System.Drawing;
using System.Windows.Forms;

public class Form1 : Form
{
    private TabControl tabControl1;
    private Rectangle myTabRect;

    public Form1()
    {
        tabControl1 = new TabControl();
        TabPage tabPage1 = new TabPage();

        // Sets the tabs to be drawn by the parent window Form1.
        // OwnerDrawFixed allows access to DrawItem. 
        tabControl1.DrawMode = TabDrawMode.OwnerDrawFixed;

        tabControl1.Controls.Add(tabPage1);
        tabControl1.Location = new Point(25, 25);
        tabControl1.Size = new Size(250, 250);

        tabPage1.TabIndex = 0;

        myTabRect = tabControl1.GetTabRect(0);

        ClientSize = new Size(300, 300);
        Controls.Add(tabControl1);

        tabControl1.DrawItem += new DrawItemEventHandler(OnDrawItem);
    }
 
    private void OnDrawItem(object sender, DrawItemEventArgs e)
    {
        Graphics g = e.Graphics;
        Pen p = new Pen(Color.Blue);
        g.DrawRectangle(p, myTabRect);
    }

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

Public Class Form1
    Inherits Form
    Private tabControl1 As TabControl
    Private myTabRect As Rectangle

    Public Sub New()
        tabControl1 = New TabControl()
        Dim tabPage1 As New TabPage()

        ' Sets the tabs to be drawn by the parent window Form1.
        ' OwnerDrawFixed allows access to DrawItem. 
        tabControl1.DrawMode = TabDrawMode.OwnerDrawFixed

        tabControl1.Controls.Add(tabPage1)
        tabControl1.Location = New Point(25, 25)
        tabControl1.Size = New Size(250, 250)

        tabPage1.TabIndex = 0

        myTabRect = tabControl1.GetTabRect(0)

        ClientSize = New Size(300, 300)
        Controls.Add(tabControl1)

        AddHandler tabControl1.DrawItem, AddressOf OnDrawItem
    End Sub

    Private Sub OnDrawItem(ByVal sender As Object, ByVal e As DrawItemEventArgs)
        Dim g As Graphics = e.Graphics
        Dim p As New Pen(Color.Blue)
        g.DrawRectangle(p, myTabRect)
    End Sub

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

Remarques

Lorsque vous définissez la propriété OwnerDrawFixedsur DrawMode , déclenche TabControl l’événement DrawItem chaque fois qu’il doit peindre l’un de ses onglets. Pour personnaliser l’apparence des onglets, fournissez votre propre code de peinture dans un gestionnaire pour l’événement DrawItem .

ne TabControl prend pas en charge les tailles d’onglet variables avec le dessin du propriétaire.

S’applique à

Voir aussi