私はいくつかの検索を行っていますが、これについて正確な答えを見つけることはできません。私のC#WPFアプリケーションでは、HWNDポインタを取得してC DLLに渡します。そのC DLLは、次に、GDI呼び出しを使用して、ウィンドウの上に並べ替えをレンダリングしようとします。エラーはありませんが、何も表示されません。私がWindowsフォームに切り替えると、dllはそれを上手くレンダリングできます。私がWindowsFormHostコントロールをホストし、そこからhwndを使用すると、私は同じ効果があります。私はHwndHostコントロールに関する情報を見てきましたが、実際に私が望むようには見えません。おそらく、そのコントロールをもっと知っている人が私に別のことを教えてくれるかもしれません。私は、WPFのようなDirectXレンダリングに使われるhwndもGDIを使うことができないと読んでいます。これは私のシナリオを不可能にするか?私はWPFウィンドウの上にフチ無しのフォームを重ねることでそれを偽造することができましたが、それはあまりにもかわいくないでしょう。どのような考えやアイデアですか?WPFウィンドウへのGDIレンダリング
4
A
答えて
5
同じhwndにWPFとGDIレンダリングを使用することはできませんが、簡単にWPFアプリケーション内に子hwndを持たせてGDIにレンダリングさせることは簡単です。それを行うためにHwndHostを見てください。 this articleの「WPFでのMicrosoft Win32ウィンドウのホスティング」のセクションにもう少し詳細があります。また、このタイプのinteropを実行するときに(空域のように)実行するさまざまな問題についても説明します。
関連する問題
- 1. WPFウィンドウのプロパティへのバインドタイトル
- 2. ページへの変換ウィンドウWPF
- 3. direct2DへのGDIレンダリングID2D1BitmapRenderTargetは常に透明です
- 4. WPFウィンドウからタブへ
- 5. WPFウィンドウへのハンドルの検索
- 6. WPF usercontrolコマンドのウィンドウへのバインディングviewmodel
- 7. ビジュアルデザインアプリケーション:WPFまたはWinForms(GDI)?
- 8. 複数のアプリケーションインスタンスとウィンドウGDI制限
- 9. WPFウィンドウと内部のElementHostでテキストが異なるレンダリング
- 10. ダウンロード開始時にWPFウィンドウのレンダリングが終了しない
- 11. WPFのSharpDXレンダリング
- 12. WPF、C#の、ウィンドウ
- 13. WPFウィンドウのプリロード
- 14. WPFウィンドウのカスタムボタン
- 15. WPFウィンドウのスケーリング
- 16. GDI C/C++ - 既存のHBITMAPへのBITMAP
- 17. BitmapSourceでのWPFレンダリング
- 18. WPF(Silverlight)レイアウト(レンダリング)の影響アプリケーションパフォーマンスへの変換
- 19. WPFの内部からDirectXアプリケーションへのレンダリング
- 20. WPFウィンドウからのすべてのコントロールへのアクセス
- 21. WPFのフローティング子ウィンドウ
- 22. WPFのウィンドウStateChangingイベント
- 23. WPFウィンドウの場所
- 24. ブラウザのホストWPFウィンドウ
- 25. フォーカスwpfウィンドウのショートカットキー
- 26. WPF observablecollection。子ウィンドウ
- 27. 拘束ウィンドウwpf
- 28. WPFウィンドウLocationChanged ends
- 29. WPF汎用ウィンドウ
- 30. WPFウィンドウIsFocused
お返事ありがとうございます!私はこれを見つけたが、私が探していたもののようには見えなかった。私は実際にホストするものはありません。私はちょうど "きれいな" hwndをGDIレンダリングDLLに渡すことを望みます。悲しいことに、WPFにマウスの上下を渡すこともできる必要がありますが、これはレンダリングには二次的です。あなたは私に何か指導を与えることができますか? –
あなたはHWNDが必要で、それがHwndHostのホストです。 WM_PAINTを処理し、デバイスコンテキストを取得し、描画を開始します。 –