salut,

j'aurais besoin d'un éclairage pour utiliser l'héritage sous .NET

J'ai un première classe parent (simplifiée pour l'occasion)
et une seconde qui en hérite et dans laquelle j'ai seulement réécrit les methodes qui ont un comportement différent en utilisant "new".
Le problème c'est que la page affichée est du type PublicationList (parent) et non DataList (fille).
En fait, la fille appelle bien le page_load du parent mais ensuite comment faire pour que ce soit les méthodes spécifiques de la classe fille qui soient appelées?




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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
namespace web
{
    public partial class PublicationList : ListPage
    {
 
        protected void Page_Load(object sender, EventArgs e)
        {
            switch (GetMode())
            {
                case Mode.YEAR:
                    DoYear();
                    break;
 
                case Mode.TYPE:
                    DoType();
                    break;
            }
        }
 
        protected Mode GetMode()
        {
        	if (Request["mode"] == "year")
                    return Mode.YEAR;
                else 
                    return Mode.TYPE;
        }
 
        protected void DoYear()
        {
 
            title.Text = "Publications " + year.ToString();
 
        }
 
        protected void DoType()
        {
 
            title.Text = "Type";
 
        }
    }
}
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
 
namespace web
{
    public partial class DataList : PublicationList 
    {
 
        protected new void DoYear()
        {
 
            title.Text = "Data" + year.ToString();
 
        }
 
        protected new void DoType()
        {
 
            title.Text = "Data Type";
 
        }
    }
}

merci pour vos conseils