Динамическое создание класса из кода с кастомным кон-ром

Для неординарных вопросов. Если вы опытный программист, попавший в трудную ситуацию, — вам сюда.

Модератор: gaidar

Правила форума
Этот раздел не предназначен для того, чтобы вы адресовали свою проблему профессионалам.
Этот раздел предназначен для профессионалов, которые столкнулись с проблемой и не могут решить ее самостоятельно.
Если вы считаете себя профессионалом, а свою проблему сложной — вам сюда.
Если модератор посчитает, что вы ошиблись, то на первый раз он перенесет ваше сообщение в основной раздел без последствий для автора. Во второй раз тема будет закрыта, а автору будет выписано нарушение. В третий раз автор будет забанен.
xenomorph
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 508
Зарегистрирован: 18.04.2004 (Вс) 11:41
Откуда: это не важно - на сегодня у меня есть алиби ...

Динамическое создание класса из кода с кастомным кон-ром

Сообщение xenomorph » 29.12.2017 (Пт) 1:03

Доброго [localtime]!

(чертовски рад видеть проект живым! Спасибо, что живые! :) )

Условия задачи:
1. на входе есть "1.exe" написанный на дотнете.
2. внутри него 1 Форма 200х200 пикселей. На форме контроллов нет. Кода нет, "ничего нет" (с). Голая _простая_ форма.

Задача - загрузить используя reflection инстанс этой формы.
--
до этой точки у меня всё работает, и вопросов нет.
Т.е. я успешно загружаю исполняемый файл и дальше - Activator.CreateInstance(AllTypesInProjects[i]) ...

Собственно задача которую я пока осилить не могу -
_До_ создания инстанса формы мне нужно выставить свойство этой формы: f_Form.AutoScaleMode = AutoScaleMode.None;

Сложность задачи в том, что свойство нельзя выставить ДО компиляции программы,
(вариант - поставить на форме в вижуал студии - не предлагать!).

Выставить свойство _после_ запуска инстанса формы - не подходит, так как
это свойство влияет на форму (её пиксельные размеры)

Мне нужно каким то образом инициализировать это свойство ДО выполнения InitializeComponent() самой формы.

Оверрайд InitializeComponent()? Создание клона копии? Кастомного конструктора\Инициализатора?

Я упёрся головой в свои знания и стековерфлоу уже позади.
Помогите!
--
п.с. это кусок образовательного проекта для детей (школы) по изучению С#.
Вы очень добавите себе кармы! :-), если поможете!

Почему такая экзотическая задача -
1. проект работает на виндоус XAMPP и портирован под Mono (debian 8\dev Mono\AWS).
2. При InitializeComponent() на Mono Форма шкалируется по фонту (по умолчанию) и таким образом нарушаются ей размеры в пикселях
Для прокта это мегакритично!

Если кому интересен сам проект: https://github.com/vbexpert/dev_validator
Сайт пока оффлайн.

Заранее большое спасибо!
... Dpkjvfnm dc`xnj itdtkbnmcz, f tckb yt itdtkbnmcz hfcitdtkbnm b dpkjvfnm !!! ...

Вернуться в Раздел для Профессионалов

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

    TopList