picturebox控件无法刷新解决办法

picturebox控件无法刷新
由于显示动态图形的闪烁问题,采用以下方法:
  Dim bmp As Bitmap = New Bitmap(1050, 300)
  Dim g As Graphics
  Dim pen1 As System.Drawing.Pen
  g = Graphics.FromImage(bmp)
  pen1 = New System.Drawing.Pen(Color.Green, 2)

循环开始
。。。
之间是x y的赋值
。。。

  g.DrawLine(pen1, x1, y1, x2, y2)
  PictureBox1.Image = bmp

循环结束

结果画出来的图形全部叠加在一起,我要的是每画一次图形显示在picturebox上且下次显示时消除上一次的显示的图形
picturebox.Refresh() 不起作用
.dispose()也不好使

求高手解答



------解决方案--------------------
C# code

private void button1_Click(object sender, EventArgs e)
        {
            Bitmap bmp = new Bitmap(400, 300);
            Graphics g = Graphics.FromImage(bmp);
            Pen pen1 = new Pen(Color.Green, 2);

            for (int i = 0; i < 100; i++)
            {
                g.Clear(pictureBox1.BackColor);
                g.DrawLine(pen1, i, 0, i, i);
            }
            pictureBox1.Image = bmp;
        }

------解决方案--------------------
C# code

public partial class Form1 : Form
    {
        public int x = 50;
        public int y = 0;
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            timer1.Enabled = true;
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            x--;
            y++;
            Bitmap bmp = new Bitmap(400, 300);
            Graphics g = Graphics.FromImage(bmp);
            Pen pen1 = new Pen(Color.Green, 2);
            g.Clear(pictureBox1.BackColor);
            g.DrawLine(pen1, 0, 0, x, y);

            pictureBox1.Image = bmp;
        }
    }