C#用GDI+实现在窗体上点击任意两点绘制一条直线

C#用GDI+绘制直线 要在窗体上点击任意两点即可绘制直线

 private void Form1_MouseClick(object sender, MouseEventArgs e)
        {
            Graphics g = this.CreateGraphics();
            Pen pen = new Pen(Color.Black, 5);
            Point p1 = e.Location;
            g.DrawEllipse(pen,p1.X,p1.Y,5,5);
            Point p2 = e.Location;
            g.DrawEllipse(pen,p2.X,p2.Y,5,5);
            g.DrawLine(pen, p1,p2);
        }


点击只出现一个一个的点,无法绘制直线

我想要将鼠标在窗体上点击的位置分别存储在两个变量里,最后用那两个变量来绘制直线,但是就像我之前写的代码一样,感觉e.location每次都被覆盖了,怎么将位置单独保存下来,实现点击任意两点绘制一条直线呢

C#初学者,还望各位指点

变量声明要在方法体外,