我正在尝试在 WPF 中托管自定义 Windows 窗体控件。我的自定义控件没有公共构造函数,它有一个Create()
看起来像这样的静态方法:
public abstract class MyCustomControl : UserControl
{
internal MyCustomControl(...) { }
public static MyCustomControl Create(SomeEnum kind)
{
switch (kind)
{
case SomeEnum.Kind1:
return new MySuperCustomControl(...);
...
}
我想要做的是在 WPF 中实例化这个自定义控件,然后将它托管在 中WindowsFormsHost
,但我显然无法添加抽象类:
<wfi:WindowsFormsHost Width="250" Height="150">
<my:MyCustomControl x:Name="customControl" /> <-- doesn't work
</wfi:WindowsFormsHost>
有没有办法通过代码将它添加到“主机”中?