PictureBox与Paint C#

时间:2014-02-09 15:46:39

标签: c# winforms paint picturebox

我正在使用WinForms创建一个应用程序,它可能在屏幕上有超过100个不同的图像/对象。是否更好地在表单上使用Paint事件,或者有100个不同的图片框?

编辑:经过一些测试后,我将代码切换为使用Paint事件。感谢大家的帮助!

2 个答案:

答案 0 :(得分:3)

您应该处理Paint事件 (并确保启用双缓冲)

制作大量控件会导致性能问题 此外,自己绘制所有内容可以让您轻松使用更复杂的效果,如透明度。

或者,切换到WPF。

答案 1 :(得分:0)

我建议使用Paint事件,因为它具有比PictureBox更好的性能,并且与旧的.NET兼容,但PictureBox对于显示来自.JPEG文件等资源的图像也非常有用。

提示:如果要在多个PictureBox控件中使用相同的图像,请为每个PictureBox创建图像的克隆。从多个控件访问同一图像会导致异常发生。