public partial class Line : Form


...{

public Line()


...{

InitializeComponent();

}

protected override void OnPaint(PaintEventArgs e)


...{

//不使用雙倍緩衝

//Graphics g = e.Graphics;

//g.FillRectangle(Brushes.White, ClIEntRectangle);

//Random r = new Random();

//for (int x = 0; x < ClIEntRectangle.Width; x++)

//{

// for (int y = 0; y < ClIEntRectangle.Height; y += 10)

// {

// Color c = Color.FromArgb(r.Next(255), r.Next(255), r.Next(255));

// using (Pen pen = new Pen(c, 1))

& // {

// g.DrawLine(pen, new Point(0, 0), new Point(x, y));

// }

// }

//}


//使用雙倍緩衝

Graphics displayGrahics = e.Graphics;

Random r = new Random();

Image im = new Bitmap(ClientRectangle.Width, ClIEntRectangle.Height);

Graphics g = Graphics.FromImage(im);//建立一張新的GDI+繪圖介面

g.FillRectangle(Brushes.White, ClIEntRectangle);

for (int x = 0; x < ClIEntRectangle.Width; x++)


...{

for (int y = 0; y < ClIEntRectangle.Height; y += 10)


...{

Color c = Color.FromArgb(r.Next(255), r.Next(255), r.Next(255));

using (Pen pen = new Pen(c, 1))



g.DrawLine(pen, new Point(0, 0), new Point(x, y));//線條先繪製到新建的那張不可見的介面上

}

}

}

displayGrahics.DrawImage(im, ClIEntRectangle);

im.Dispose();

}

}
運行效果圖: