获得面板的颜色

时间:2012-02-19 21:22:24

标签: c# .net winforms

如何获取Panel(或其他任何内容,例如Form)像素的颜色?
(我可以使用Graphics的功能吗?)

提前谢谢。

1 个答案:

答案 0 :(得分:1)

根据提供的代码here
在给定像素的客户端坐标的情况下,我创建了一个返回控制像素颜色的扩展方法:

public static class ControlExts
{
    public static Color GetPixelColor(this Control c, int x, int y)
    {
        var screenCoords = c.PointToScreen(new Point(x, y));
        return Win32.GetPixelColor(screenCoords.X, screenCoords.Y);
    }
}

因此,在您的情况下,您可以这样做:

var desiredColor = myForm.GetPixelColor(10,10);