Partage
  • Partager sur Facebook
  • Partager sur Twitter

Tabcontrol

Onglet

Sujet résolu
    4 mai 2011 à 9:46:49

    Bonjour à tous,

    Je suis un gros débutant en C# et j'aimerais savoir comment changer la position du texte situé dans les onglets d'un TabControl lorsqu'il est en alignement "left" et changer la couleur de ces mêmes onglets.

    Une bonne explication serait la bienvenu ^^

    Merci d'avance!
    • Partager sur Facebook
    • Partager sur Twitter
      4 mai 2011 à 10:21:15

      En winform ou en WPF ?
      • Partager sur Facebook
      • Partager sur Twitter
        4 mai 2011 à 10:51:50

        En winform!

        Je viens de trouver de toute façon:
        private void TabControl_DrawItem(object sender, DrawItemEventArgs e)
        {
        Graphics g = e.Graphics;
        Brush _TextBrush;

        // Get the item from the collection.
        TabPage _TabPage = TabControl.TabPages[e.Index];

        // définie la taille du rectangle dans lequel s'effectue les changements souhaités
        Rectangle _TabBounds = TabControl.GetTabRect(e.Index);

        if (e.State == DrawItemState.Selected)
        {
        // définie la couleur du texte lorsqu'on selectionne l'onglet.
        _TextBrush = new SolidBrush(Color.FromArgb(((System.Byte)(0)), ((System.Byte)(81)), ((System.Byte)(135))));
        g.FillRectangle(Brushes.Transparent, e.Bounds);
        }
        else
        {
        _TextBrush = new SolidBrush(Color.FromArgb(((System.Byte)(0)), ((System.Byte)(81)), ((System.Byte)(135))));

        }

        // Change la police des caractères dans les onglets
        Font _TabFont = new Font("Arial", 10, FontStyle.Bold, GraphicsUnit.Pixel);

        // Centre le texte dans les onglets
        StringFormat _StringFlags = new StringFormat();
        _StringFlags.Alignment = StringAlignment.Center;
        _StringFlags.LineAlignment = StringAlignment.Center;
        g.DrawString(_TabPage.Text, _TabFont, _TextBrush, _TabBounds, new StringFormat(_StringFlags));
        }

        private void Form1_Load(object sender, EventArgs e)
        {
        TabControl.DrawMode = TabDrawMode.OwnerDrawFixed;
        TabControl.DrawItem += new DrawItemEventHandler(TabControl_DrawItem);
        }
        • Partager sur Facebook
        • Partager sur Twitter

        Tabcontrol

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown