Как правило, вы хотите использовать внедрение свойства для внедрения зависимостей mdiAuthenticationForm. Разве вы не можете сделать что-то вроде следующего?
Добавьте сопоставления типов в файл конфигурации:
<container>
<types>
<type type="IAuthentication,PutAssemblyNameHere" mapTo="Authentication,PutAssemblyNameHere"/>
<type type="IAuthorization,PutAssemblyNameHere" mapTo="Authorization,PutAssemblyNameHere"/>
<type type="mdiAuthenticationForm,PutAssemblyNameHere"/>
</types>
</container>
Поместите атрибуты зависимостей в свойства аутентификации и авторизации.
[Dependency]
public Services.Authentication.IAuthentication Authenticator { get; set;}
[Dependency]
public Services.Authentication.IAuthorization Authorizor { get; set; }
Затем, наконец, в своем коде выполните следующие действия, чтобы получить экземпляр mdiAuthenticationForm:
mdiAuthenticationForm form = container.Resolve<mdiAuthenticationForm>();
Если вы не хотите добавлять mdiAuthentication в файл конфигурации, вы также можете сделать следующее:
mdiAuthenticationForm form = new mdiAuthenticationForm();
container.BuildUp<mdiAuthenticationForm>(form);
Это должно разрешить зависимости от существующего экземпляра и подключить их.