none
在wpf里面使用winform的UserControl,弹出Popup时,无法遮罩winfrom的那个usercontrol问题 RRS feed

  • 问题

  • 问题是这样的,我有个wpf的usercontrol:a.xaml,有一个winform的usercontrol:b.cs,在wpf的control里面中间部分用winform的control来填充,但是我有个功能需要弹出提示,提示信息后面要用遮罩层蒙上,其他的没有用的winform里的usercontrol的wpf页面都能很好的弹出提示,如:

    但是有了winform的usercontrol里面弹出来的是这样:

    中间显示的部分就是winform的Usercontrol,popup没法遮罩,这到底是怎么回事?都是同样的代码,都是同样弹出遮罩层的方法,请各位大侠帮忙指点,万分感激!!!!!


    程序人生

    2013年9月10日 3:09

答案

  • 程序人生,您好!

    因为WPF和Winform本来绘制的方式就是不同的,如果你要将让这两种技术进行交互的话,我建议您不如单纯使用WPF的control,或者采用这样一个变通方法。

    一个window里winform会显示在最前的,可以用两个window来做,第一个window放winform的控件,第二个window放wpf控件,window可以设置透明背景。


    <THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
    Thanks
    MSDN Community Support

    Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.

    2013年9月11日 3:35
    版主

全部回复

  • 大哥,能提供一段示例代码不?我想在本地模拟下你第二张图的效果然后进行调试,不过重现这个问题就要很长时间。你最好提供一个简化的代码,可以运行的。这样别人也可以帮你调试,你说对吧?你可以放在网盘上共享出来。就一张图,凭空猜是猜不出结果的。

    2013年9月11日 2:20
  • 程序人生,您好!

    因为WPF和Winform本来绘制的方式就是不同的,如果你要将让这两种技术进行交互的话,我建议您不如单纯使用WPF的control,或者采用这样一个变通方法。

    一个window里winform会显示在最前的,可以用两个window来做,第一个window放winform的控件,第二个window放wpf控件,window可以设置透明背景。


    <THE CONTENT IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, WHETHER EXPRESS OR IMPLIED>
    Thanks
    MSDN Community Support

    Please remember to "Mark as Answer" the responses that resolved your issue. It is a common way to recognize those who have helped you, and makes it easier for other visitors to find the resolution later.

    2013年9月11日 3:35
    版主