有人在這裏http://social.msdn.microsoft.com/forums/en-US/wpf/thread/6f9dd3b5-af92-4076-9b4e-1a770dd52f70/WPF WindowsFormsHost是不可見的,當AllowsTransparency =「真」
解決了這個問題,但是那是在2006年我目前使用的.NET Framework 3.5。現在有沒有更好的解決方案。有誰知道微軟在4.0版本中是否有針對此問題的直接解決方案?
有人在這裏http://social.msdn.microsoft.com/forums/en-US/wpf/thread/6f9dd3b5-af92-4076-9b4e-1a770dd52f70/WPF WindowsFormsHost是不可見的,當AllowsTransparency =「真」
解決了這個問題,但是那是在2006年我目前使用的.NET Framework 3.5。現在有沒有更好的解決方案。有誰知道微軟在4.0版本中是否有針對此問題的直接解決方案?
是的,這是行不通的。從this鏈路
這句話是使用 WS_EX_LAYERED和 UpdateLayeredWindow()的限制。這種形式的 分層窗口不支持子窗口 。這是一個Win32限制, 不是WPF限制。子窗口 可以具有恆定不透明度 (WS_EX_LAYERED和 SetLayeredWindowAttributes),但WPF 可以使用不支持該模式中,因爲它是 更具限制性的(恆定與 每個像素的不透明度)。
我已經能夠找到的最佳解決方案是從this鏈接。
我在試用時向AllowsTransparency窗口添加了一個System.Windows.Forms.TextBox,您可以從here下載我的修改版本。
看看蛾的博客文章Vista: Glass in C#
這有幫助。謝謝。 – user441660 2010-11-08 14:54:52