Без просмотра кода это трудно подтвердить, но по вашим объяснениям этот класс нарушает принцип единой ответственности.
Если предположить, что формы отличаются только данными, пусть конструктор получит фактические данные вместо идентификаторов, которые, как я полагаю, используются для получения данных.
Если они существенно различаются по содержанию, они должны быть двух разных форм (возможно с общим абстрактным родительским классом).
Исходя из моего прошлого опыта, наличие этой единой формы для управления ими всеми менталитетом просто создаст кошмар обслуживания. Потратьте некоторое время на изучение принципов SOLID (S = принцип единой ответственности), и вы будете приятно удивлены кодом, который начинаете писать.