0

我希望能够覆盖一个图像,该图像在它所属的面板中应该是可移动的和可调整的,并且在 WPF 中,位于 WinForms 控件的顶部。我已经很容易在 WPF 中实现可移动/可调整大小的运行时图像。我还决定将 WinForms 控件导入 WPF 控件以尝试进行叠加,但是,它似乎只显示 WinForms 控件,顶部没有叠加图像(不透明度为 50%)。我正在使用的系统的其余部分是 WinForms,我试图覆盖的 WinForms 控件是一个相当大的控件,我宁愿不必将其转换为 WPF 来完成此任务。有人对执行此操作的最佳方法有任何提示吗?基本上图像本身与控件相关,并且用户将图像的某些部分(因此调整大小和移动)与控件的某些部分对齐。

4

3 回答 3

1

使用RenderTargetBitmap将(隐藏的)WPF 元素呈现为图像,并使用 GDI 在 Windows 窗体内容的顶部绘制图像。

于 2013-08-21T12:03:20.927 回答
0

最后,为此,我使用了类似于 Gusdor 提到的建议。我没有使用 DrawToBitmap 函数,而是将我想从控件中看到的内容渲染到图元文件,然后在 WPF 控件中渲染图元文件。这一切都很好,解决了这个不寻常的问题。感谢所有帮助

于 2013-08-27T15:39:11.850 回答
-1

为此,您需要将Windows 表单内容托管在ElementHost控件内托管的 WPF 用户控件(带有覆盖的图像)内。

于 2013-08-21T09:31:02.420 回答