zoukankan      html  css  js  c++  java
  • WPF保存包含Winform控件的XAML页面问题

    最近的工作中,用到了WPF调用Winform控件

    但是在保存XAML页面的时候发现了问题,就是Winform页面黑黑的,没有任何渲染的波形曲线。

    查了原因,大概的意思是指渲染的方式不一样,所以会有这个问题,那只能转变思路,用截图的方式去做,就是把要打印的XAML里的控件,进行按照Windows定位,然后进行截图,保存。

    public static System.Drawing.Bitmap GetScreenSnapshot(FrameworkElement fe)
            {
                try
                {
                    //转换到屏幕坐标系以后,进行截图
                    Point point = fe.PointToScreen(new Point(0, 0));
                    System.Drawing.Rectangle rc = new System.Drawing.Rectangle((int)point.X, (int)point.Y, (int)fe.ActualWidth, (int)fe.ActualHeight);
                    var bitmap = new System.Drawing.Bitmap(rc.Width, rc.Height, System.Drawing.Imaging.PixelFormat.Format32bppArgb);
    
                    using (System.Drawing.Graphics memoryGrahics = System.Drawing.Graphics.FromImage(bitmap))
                    {
                        memoryGrahics.CopyFromScreen(rc.X, rc.Y, 0, 0, rc.Size, System.Drawing.CopyPixelOperation.SourceCopy);
                    }
                    return bitmap;
                }
                catch (Exception ex)
                {
                    return null;
                }
            }

    同样的,打印XAML页面的时候,也有这个问题,用了截图的方式进行打印内容的填充。

  • 相关阅读:
    hiho#1445 重复旋律5 求子串数量 后缀自动机
    SPOJ LCS2 后缀自动机
    SPOJ-LCS 后缀自动机
    bzoj 3261 最大异或和 可持久化字典树(01树)
    【洛谷1297】单选错位
    【HAOI2008】木棍分割
    【SDOI2016】排列计数
    【HAOI2008】下落的圆盘
    【HAOI2008】硬币购物
    【洛谷5520】青原樱
  • 原文地址:https://www.cnblogs.com/ZXdeveloper/p/9686480.html
Copyright © 2011-2022 走看看