В C # распространенным шаблоном, который я использую, является заполнение деталей нижнего класса вычислений объектом формы.
Конструктор для MyForm:
MyForm()
{
_MyFormCalcs = new MyFormCalcs(this);
}
Но сегодня я столкнулся с ошибкой, которая заставляет меня думать, что, поскольку мой конструктор не завершил выполнение, он создает новый экземпляр MyForm для передачи в MyData. Таким образом, он вызывает конструктор дважды. Я обнаружил, что статический список в MyFormCalcs заполнялся дважды, а во второй раз происходил сбой, поскольку ключи уже присутствовали в списке.
Могу ли я использовать это в конструкторе для ссылки на этот экземпляр? Что он будет содержать в низшем классе - был ли запущен конструктор или нет.
Как лучше передать мою форму в низший класс?