I am getting ready to create a generic EventArgs class for event args that carry a single argument:
public class EventArg : EventArgs { // Prope
The problem with a generic type is that even if DerivedType inherits from BaseType, EventArgs(DerivedType) would not inherit from EventArgs(BaseType). Using EventArgs(BaseType) would thus prevent later using a derived version of the type.