在初始化BufferedGraphicsContext时,将宽度和高度都加1

本文关键字:高度 BufferedGraphicsContext 初始化 | 更新日期: 2023-09-27 18:15:48

我使用BufferedGraphics来减少闪烁。但在MSDN样本中,初始化BufferedGraphicsContext时,他们将宽度和高度都加了1。

代码部分如下:

private BufferedGraphicsContext context;
private BufferedGraphics grafx;
context = BufferedGraphicsManager.Current;
context.MaximumBuffer = new Size(this.Width+1, this.Height+1); //here
grafx = context.Allocate(this.CreateGraphics(), new Rectangle(0, 0, this.Width, this.Height));

我已经试过去除两个+1,它工作得很好。

所以我想知道是否有一种情况只适用于+1

在初始化BufferedGraphicsContext时,将宽度和高度都加1

MaximumBuffernew Size(0, 0)抛出异常,因此添加一个异常是避免Width == 0Height == 0

的简单方法。