请问大家,winform中如何截取某控件图像?貌似Graphics.CopyFromScreen()可以从某种程度上完成。
但假如控件大于屏幕范围,而出现滚动条的时候,就没法截取了。请问大家,该怎么解决呢?

解决方案 »

  1.   

    顶了,根据句柄截图API
            [DllImport("gdi32.dll")]
            private static extern bool BitBlt
            (
                IntPtr hdcDest, //指向目标设备环境的句柄
                int nXDest, //指定目标矩形区域克上角的X轴逻辑坐标
                int nYDest, //指定目标矩形区域左上角的Y轴逻辑坐标
                int nWidth, //指定源和目标矩形区域的逻辑宽度
                int nHeight, //指定源和目标矩形区域的逻辑高度
                IntPtr hdcSrc, //指向源设备环境句柄
                int nXSrc, //指定源矩形区域左上角的X轴逻辑坐标
                int nYSrc, //指定源矩形区域左上角的Y轴逻辑坐标
                System.Int32 dwRop //指定光栅操作代码。这些代码将定义源矩形区域的颜色数据,如何与目标矩形区域的颜色数据组合以完成最后的颜色
            );