我用picturebox画曲线,先建了一个bitmap,然后赋给picturebox的image属性,每次在bitmap上面修改画图后,要重新刷新显示在picturebox上,我发现有3种方法:1.调用picturebox.Invalidate()
2.调用picturebox.Refresh()
3.重新赋值,picturebox.image = bitmap关于前两种方法,我在网上查了一些介绍:
Invalidate: 使控件的特定区域(可以自己设置区域,从而提高性能)无效并向控件发送绘制消息。
将控件标记为需要重绘,但是不会立即执行刷新重绘,等到系统空闲时进行重绘。Refresh: 强制控件使其工作区无效并立即重绘自己和任何子控件。大多数时候Invalidate已经足够了,当系统要集中进行大量的刷新重绘时,建议使用Invalidate,因为这样系统最终只进行一次刷新,提高了系统性能。如果你想立即执行刷新的时候,建议使用Refresh方法。
但是最后一种方法不知道与前面相比,性能怎么样?
2.调用picturebox.Refresh()
3.重新赋值,picturebox.image = bitmap关于前两种方法,我在网上查了一些介绍:
Invalidate: 使控件的特定区域(可以自己设置区域,从而提高性能)无效并向控件发送绘制消息。
将控件标记为需要重绘,但是不会立即执行刷新重绘,等到系统空闲时进行重绘。Refresh: 强制控件使其工作区无效并立即重绘自己和任何子控件。大多数时候Invalidate已经足够了,当系统要集中进行大量的刷新重绘时,建议使用Invalidate,因为这样系统最终只进行一次刷新,提高了系统性能。如果你想立即执行刷新的时候,建议使用Refresh方法。
但是最后一种方法不知道与前面相比,性能怎么样?
解决方案 »
- 求一个正则表达式
- 求解!!dataset中多表,保存到数据库出错?
- System.Windows.Forms.Timer tmr=sender as System.Windows.Forms.Timer;
- 在客户端添加WEB服务,服务端是WCF
- 数据库里的 DateTime类型的字段怎么插入空值??
- 请问让debug模式的时候不输出日志怎么写
- 令人头疼的 HttpWebRequest和HttpWebResponse
- DataTable.NewRow()用来创建一个新的Row,为什么还要加回自己dt.Rows.Add()?
- 我现在有两个项目,想在一个项目中,显示另一个项目的窗体
- 新人
- the UpdateCommand affected 0 of the expected 1 records请帮忙解决,谢谢
- 大数据量模糊查询速度如何优化?
这些比较方法在C#的类库中都能找到比较的方法。