Bonjour !
J’ai deux classes, une nommée UserControlEx qui hérite de UserControl puis une classe MonUC qui hérite de UserControlEx. Sur l'événement Load du UserControlEx, j'ai spécifié une méthode à exécuter qui est commune au deux classes puiqu'elles implémentes IControl. Dans mon cas, j'aimerais que le code de MonUC soit exécuté au lieu de celui de UserControlEx (i.e. le PrepareControl de MonUC au lieu de UserControlEx). Est-ce qu'il y a moyen de faire cela ou je suis complètement perdu...

Puisque je redéfinie la méthode de la classe dont j'hérite, j'ose croire que c'est possible...

Merci de votre aide!

// UserControlEx.cs
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
public class UserControlEx : UserControl, IControl
{
  public UserControlEx()
  {
    this.Load += new EventHandler(UserControlEx_Load);
  }
 
  void UserControlEx_Load(object sender, EventArgs e)
  {
    PrepareControl();
  }
 
  void PrepareControl()
  {
  }
}

// MonUC.cs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
public partial class MonUC : UserControlEx, IControl
{
 
  [...]
 
  public void PrepareControl()
  {
    base.PrepareControl();
    // Bla bla
  }
}