设置AllowTransparency = True时,Windows窗体控件不会出现在WPF窗口中

时间:2014-11-07 10:13:16

标签: c# wpf windows winforms

现在我有一项任务是将Windows窗体面板添加到WPF窗口。 我以默认模式运行并且运行正常,但是当我更改为AllowTransparency = True时,所有Windows窗体控件都消失了。

以下是我在here

之后向控件添加面板的代码

以下是源代码:

 System.Windows.Forms.Panel myPanel = new System.Windows.Forms.Panel();
 myPanel.BackColor = System.Drawing.Color.AliceBlue;
 myPanel.Visible = true;
 myPanel.Width = 500;
 myPanel.Height = 500;

WindowsFormsHost myHost = new WindowsFormsHost();
myHost.Child = myPanel;
ui_aaa.Children.Clear();
ui_aaa.Children.Add(myHost);
ui_aaa.UpdateDefaultStyle();

我需要找到在AllowTransparency模式下显示面板的方法。谢谢

1 个答案:

答案 0 :(得分:0)

由于在AllowTransparency模式下显示时WPF和Windows窗体之间存在差异,WPF中的每像素与WinForm中的24 bpp GDI不同,我们无法在WPF中以AllowTransperency模式显示Windows窗体控件