我有一个 wpf 用户控件,其中包含一个位于 windowsformhost 中的 activex 控件。我正在使用一个 MVVM 模式,它说 ViewModel1 被映射到纯 WPF 视图,而 ViewModel2 被映射到 wpf 内容和上面的用户控件
如果 ViewModel2 是“隐藏”,然后变为可见,则其中的 Activex 控件不会显示(具体来说,我说的是 VLC Activex 控件)。
我已经使用按钮和用户控件在非 MVVM 模式中进行了测试。用户控件是隐藏的,直到您按下按钮并且发生同样的事情,但是如果我在用户控件中创建一个方法以将 activex 控件重新附加到 windowsformhost,那么它会重新出现。如果我从视图模型中调用此方法,那么它仍然是空白的。有谁知道我怎样才能让它再次显示?
编辑 - 我刚刚发现这是因为我的 wpf 应用程序具有透明度。似乎不可能在启用 windowsformshost 和透明度的情况下做我想做的事。