かなり自明の質問です、どんな答えでもうれしいです。私にとってそれは意味がありません。情報を失うことは気にしません。どういうわけかIRenderableを継承するすべてのリストを1つのリストに連結してから、そのリストでIRenderableメソッドを呼び出したいだけです。これが私が忘れていたプログラミングの基本的なルールだと感じています...
編集:これはコードです:
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:ところで、.net 4.0をインストールしましたが、参照はSystem.dllバージョン2.0.5.0のままです。