Я создал пользовательский элемент управления ASP.NET и хотел создать фабрику с методом, позволяющим создавать элемент управления с помощью нескольких параметров.
Первоначально я собирался создать конструктор пользовательского элемента управления с параметрами, но параметры на самом деле предназначены только для того, чтобы упростить создание пользовательского элемента управления из некоего устаревшего кода, который я не хочу существенно менять. Я решил, что вместо этого хотел бы иметь метод в фабричном классе, который мог бы использовать унаследованный код, чтобы я не запутал интерфейс моего пользовательского элемента управления.
Проблема в том, что я не могу ссылаться на класс пользовательского элемента управления из класса фабрики (поскольку обычно вы ссылаетесь на пользовательский элемент управления программно, добавляя <%@ Reference Control="~/SomeControl.ascx" %>
, но класс фабрики не является страницей asp).
В дополнение к этому я хотел, чтобы вызывающая страница передавала ссылку на себя, чтобы фабричный метод мог вызывать LoadControl, но мне все еще нужно иметь возможность объявить переменную SomeControl, чего не может быть.
Как создать фабрику для пользовательского элемента управления?