¿Por qué no podemos usar un constructor con parámetro en clases derivadas?

¿Por qué esto no es posible? Obtengo el siguiente error de compilación al crear una instancia de "DerivedClass" con un parámetro-constructor:

'GenericParameterizedConstructor.DerivedClass' no contiene un constructor que tome 1 argumento

Pero llamar a un método muy similar funciona.

¿Por qué?

class Program
{
    static void Main(string[] args)
    {
        // This one produces a compile error 
        // DerivedClass cls = new DerivedClass("Some value");

        // This one works;
        DerivedClass cls2 = new DerivedClass();
        cls2.SomeMethod("Some value");
    }
}


public class BaseClass<T>
{
    internal T Value;

    public BaseClass()
    {
    }

    public BaseClass(T value)
    {
        this.Value = value;
    }

    public void SomeMethod(T value)
    {
        this.Value = value;
    }
}

public class DerivedClass : BaseClass<String>
{
}

Respuestas a la pregunta(3)

Su respuesta a la pregunta