If you want to be able to convert an instance of the base type to the derived type, I suggest you write a method to create an appropriate derived type instance. Or look at your inheritance tree again and try to redesign so that you don't need to do this in the first place.

Email codedump link for Is it possible to assign a base class object to a derived class reference with an explicit typecast in C#?