当AllowTransparency ="True"时,wpf WindowsFormsHost不可见

use*_*660 3 wpf windowsformshost

有人在这里解决了这个问题http://social.msdn.microsoft.com/forums/en-US/wpf/thread/6f9dd3b5-af92-4076-9b4e-1a770dd52f70/

但那是在2006年.我目前正在使用.net framework 3.5.现在还有更好的解决方案吗?有人知道微软是否在4.0中为这个问题提供了直接的解决方案吗?

Fre*_*lad 5

是的,这不行.从这个链接引用

这是使用WS_EX_LAYERED和UpdateLayeredWindow()的限制.这种形式的分层窗口不支持子窗口.这是Win32限制,而不是WPF限制.子窗口可以使用具有恒定不透明度(WS_EX_LAYERED和SetLayeredWindowAttributes)但WPF不支持该模式,因为它更具限制性(常量与每像素不透明度相比).

我能找到的最佳解决方案来自链接.

我在试用时将一个System.Windows.Forms.TextBox添加到AllowTransparency窗口,你可以从这里下载我的修改版本.