Наверное, просто, но не мог понять. Я загружаю сборку во время выполнения, просматриваю некоторые классы и генерирую элементы управления вводом для ее свойств. Чтобы создать экземпляр объекта во время выполнения, я использую:
object o = PropertyType.GetConstructor(BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public, null, Type.EmptyTypes,null).Invoke(null);
и он отлично работает для типов классов. Когда типом является массив, я использую
object o = PropertyType.Type.GetConstructor(new Type[] { typeof(int) }).Invoke(new object[] { 0 });
который тоже отлично работает. Но когда дело доходит до строкового типа или типов значений, GetConstructor.Invoke не работает. Я также попробовал Activator.CreateInstance, который тоже не сработал.