Bonjour,

Je cherche à créer un label multilignes, pour cela je souhaite traiter le text du label lors de l'affichage afin d'insérer des retours à la ligne.

Pour cela, j'ai créé un contrôle héritant de label dans lequel je surcharge le onpaint afin de réaliser mon traitement sur la chaîne.

voici mon code dans la forme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
m_labelHelpTheme1 = new MonLabel();
m_labelHelpTheme1.Text = "aaaaaaaaaaaaaaaaa";
m_labelHelpTheme1.TextAlign = ContentAlignment.TopLeft;
m_labelHelpTheme1.Font = new Font("Tahoma", 9, FontStyle.Bold);
m_labelHelpTheme1.ForeColor = Color.Black;
m_labelHelpTheme1.Location = new Point(10, 50);
m_labelHelpTheme1.Width = ClassParameters.RightValue(230);
m_labelHelpTheme1.Height = ClassParameters.RightValue(50);
m_labelHelpTheme1.Parent = this;
m_labelHelpTheme1.Visible = true;
this.Controls.Add(m_labelHelpTheme1);
voici mon code du label
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
 
using System;
using System.Linq;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
 
namespace MonApplication
{
    public partial class MonLabel : Label
    {
        public MonLabel()
        {
            InitializeComponent();
        }
 
        protected override void OnPaint(PaintEventArgs pe)
        {
            //Ici je veux faire le traitement sur ma chaîne
 
            // Calling the base class OnPaint
            base.OnPaint(pe);
        }
    }
}
Mais le Onpaint surchargé ne se déclenche jamais....... impossible d'entrer dedans

Avez-vous une idée du pb ?

Merci d'avance pour votre aide.