У нас есть приложение, n-уровневое, структурированное, но я бы не сказал, что оно n-уровневое.Самая верхняя форма Form / AKA MainForm / подключается к БД и получает список доступных модулей, в соответствии с которыми она начинает загружать разные модули.Каждый модуль представляет собой отдельный проект, имеющий 1 класс верхнего уровня, который является производным от абстрактного класса, из которого происходят все модули.
Итак, пока у нас все работает просто отлично, передавая строки соединений, диалогимежду модулями и основным приложением.
Следующим шагом является реализация глобальной библиотеки значков, которую должен использовать каждый модуль, суть в том, что каждый модуль должен иметь возможность загружать в него свои собственные изображения.
Я имею в виду глобальный статический класс, который возвращает текущий запущенный экземпляр класса ImageList.Я не знаю, с чего начать, поэтому кто-нибудь может привести пример глобального класса, который можно использовать статически, не объявляя и не передавая его?возможно ли это вообще?
РЕДАКТИРОВАТЬ:
попытка перефразирования: в идеале глобальный ресурс, в который каждый отдельный модуль может вставлять ресурсы, из которых каждый модуль может получитьизображения, если они существуют.Я даже не знаю, с чего начать и что искать.
РЕДАКТИРОВАТЬ 2:
только что проверил:было 3 проекта: 1 основной, 1 ребенок, 1 промежуточныйосновные ссылки междудочерние ссылки между ними
1 main запускается и вызывает статические методы при "inbetween" загрузке некоторых строк в него.Используя рефлексию «main», экземпляр загружает child.dll и создает экземпляр объекта, используя рефлексию, затем вызывает метод, определенный в интерфейсе «inbetween» для дочернего объекта obj, который, в свою очередь, вызывает статический метод для «inbetween», после которогоmsgstr "печатать все строки в статическом" промежуточном звене ".И это работает!Я был как WTF?Я думаю, Reflection сочетает в себе 2 "промежуточных звена"