C# Graphics的绘图与清除

最近在做一个绘制进程资源分配图的课程设计,以前 没有用过C#,突然想试一下,就用C#的WinForm做了一个。
具体看下面:

窗体

窗体大概是这样,因为起初边看书边查网上资料,没有用到Paint事件,所有图形都是通过Click触发Draw来实现的。
想做到的是对于某个特定的结点可以做到制定点击删除的功能。
以进程结点为例:
1.在PictureBox的MOVE事件中,建一个Rectangle确定区域,如果在区域中则把一个BOOL抓取量(catachP)置Ttrue
2.在点击了清除的情况下,在PictureBox的Click事件中,若检测到catchP为Tture,则在那个结点之前存储的坐标位置用白色的Pen重新画一个覆盖他
以达到清除的功能

问题:
后面产生的椭圆被前面产生的椭圆挡住了。
红色为点击清除后绘制的,为了看出挡住,我对坐标进行了一定的偏移

Click产生P的图形:

图片说明

Move获取P是否被抓取

图片说明

Click里的清除:

图片说明

大哥能发个完整的代码?