Pretty self explanatory question, glad for any answer. For me it doesn't make sense. I don't care about losing information. I just want to concatenate all my lists that inherit IRenderable somehow into a single list and then call IRenderable methods on it. I have a feeling that this is some basic rule of programming I forgot...
edit: This is the code:
interface IRenderable
{
void Render();
}
interface IScreen : IRenderable
{
}
public List<IScreen> Screens = new List<IScreen>();
List<IRenderable> renderList = new List<IRenderable>();
renderList = ((List<IRenderable>)Screens; // error: cannot convert type IScreen to IRenderable
edit2: btw, I have .net 4.0 installed, but the reference still stays System.dll Version 2.0.5.0