У меня есть проект WPF, где я загружаю сборку WindowsForsm (файл dll) динамически, как это:
Assembly currentAssembly = Assembly.LoadFile(System.IO.Directory.GetCurrentDirectory() + @"\" + fileName);
System.Windows.Forms.Control currentControl = (System.Windows.Forms.Control)currentAssembly.CreateInstance(featureName, false);
featureHost.Child = currentControl;
Мой XAML-код для FeatureHost выглядит следующим образом:
<WindowsFormsHost Name="featureHost" Grid.Row="1" Margin="14,4,14,14" Background="WhiteSmoke"></WindowsFormsHost>
Проблема, с которой я столкнулся, состоит в том, что в коде C # значение currentControl будет нулевым, но текущая сборка будет загружена правильно Но если я добавлю ссылку на проект в проект Windows Forms, currentControl получит правильное значение.
Конечно, я не хочу иметь ссылку на проект WindowsForms, который мне не нужен.
У кого-нибудь есть какие-либо предложения о том, почему это работает, и как я могу это исправить?
Я использую .Net 4.0.