Windowsフォームホストに格納されたActiveXコントロールを含むwpf usercontrolがあります。私は ViewModel1を言うMVVMパターンを使用してい はピュアWPFビューにマップされ、 ViewModel2は、WPFのコンテンツと上記のユーザーコントロールにマップされているWPFのActiveXコントロールWindowsフォームホストが表示されなくなってから表示されない
ViewModel2は「隠し」で、その後の内部その後、ActiveXコントロールの可視になった場合それは表示されません(特に私はVLCのActiveXコントロールについて話しています)。
ボタンとusercontrolを使用して非MVVMパターンでテストしました。 usercontrolは、ボタンを押すまで隠されています。同じことが起こりますが、私がusercontrolのメソッドを作成して、windowsformhostにactivexコントロールを再接続すると、再び表示されます。このメソッドをビューモデルから呼び出すと、まだ空白のままです。誰も私がこれを再び表示する方法を知っていますか?
EDIT - 私は自分のwpfアプリケーションで透明性を持っているため、これが発見されました。 windowsformshostと透過性を有効にして、私が望むことを実行することができないようです。
私はVlcHostと呼ばれる私のグリッドにwindowsformshostを持っています - それで、 "_vlcPlayer = new AxVLCPlugin2();"というusercontrolの初期化中に追加します。 "VlcHost.Child = _vlcPlayer;" - これはうまくいきますが、私はusercontrolを隠し、再び見えるようにするために、アクティブなコントロールは見えません。新しいソースを設定することができるので、まだアクセス可能です。 – Oli
あなたは_vlcPlayer.Refresh();を試しましたか? – ROFLwTIME