Winforms 我想在winform中绘制像素的速度比FillRectangle方法快

Winforms 我想在winform中绘制像素的速度比FillRectangle方法快,winforms,visual-c++,pixels,Winforms,Visual C++,Pixels,通过将宽度和高度设置为1,可以使用FillRectangle方法绘制像素。但是,使用FillRectangle方法在循环中绘制500*600像素时,速度似乎较慢。我搜索了一些替代方法,比如DrawLinemethod,但这也很慢 有人能给我一个解决办法吗 致以最诚挚的问候创建位图,通过设置像素值直接填充,然后在表单中绘制。请参阅Bitmap.LockBits方法:任何类型的绘制都有固定的开销,无论是对屏幕还是对位图。它非常小,但是当你对每一个像素这样做时,它加起来是O(n^2)。绕过它的唯一方法

通过将宽度和高度设置为1,可以使用
FillRectangle
方法绘制像素。但是,使用
FillRectangle
方法在循环中绘制500*600像素时,速度似乎较慢。我搜索了一些替代方法,比如
DrawLine
method,但这也很慢

有人能给我一个解决办法吗


致以最诚挚的问候

创建位图,通过设置像素值直接填充,然后在表单中绘制。请参阅Bitmap.LockBits方法:任何类型的绘制都有固定的开销,无论是对屏幕还是对位图。它非常小,但是当你对每一个像素这样做时,它加起来是O(n^2)。绕过它的唯一方法是获取指向位图内存的原始指针。设备驱动程序不再像以前的DOS时代那样对屏幕实用,但仍然可以使用位图。