There is a helper method to get a nullable type's underlying value type: Nullable.GetUnderlyingType
. It will return null if the given type is not a closed over nullable type. I would do something like this:
Type type = Nullable.GetUnderlyingType(Registro.PropertyType) ?? Registro.PropertyType;
string typeName = type.Name;