IsComplexType is implemented in the following way:
!TypeDescriptor.GetConverter(this.ModelType).CanConvertFrom(typeof(string));
All these classes are not specific for MVC and can be used by you. You only need to replace ModelType
with a type you want to test.