Bonjour,

J'ai un petit souci et je ne comprends pas pourquoi.
Soient A et B deux classes avec B qui héritent de A

J'ai une liste déclarée comme suis :

Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
IList<B>listeDeB = new ObservableCollection<B>();

J'ai une méthode avec le prototype suivant :

Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
void MaMethode(IList<A> uneListe);

Je n'arrive pas à faire
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
MaMethode(listeDeB);
(methode has some invalide argument).

Déjà là je ne comprends pas bien, puisque B hérite de A, je devrais pouvoir l'appeler, mais admettons. Je caste donc ma liste ainsi :
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
MaMethode((IList<A>)listeDeB)
et là j'obtiens :
Unable to cast object of type 'System.Collections.ObjectModel.ObservableCollection to type 'System.Collections.Generic.IList

Hum... Quelqu'un peut m'expliquer ?