Méthode invalidation

Fermé
Ano1994 Messages postés 31 Date d'inscription jeudi 15 août 2013 Statut Membre Dernière intervention 3 avril 2015 - 30 nov. 2013 à 17:11
Bonjour tout le monde,

chui débutante en c#, je commence à réaliser une petite application windows forum de paint, qui sert a dessiner quelques formes sur un panel :

dans un premier temps :

int x,y;
private void panel1_MouseClick(object sender, MouseEventArgs e)
{
Point p = new Point(e.X, e.Y);
x = p.getX();
y = p.getY();
panel1.Invalidate();
}
private void panel1_Paint(object sender, PaintEventArgs e)
{
Graphics g = panel1.CreateGraphics();
Pen p = new Pen(Color.Black);
Point o = new Point(x,y);
Rectangle R = new Rectangle(o, 100, 200);

g.DrawRectangle(p, R.getPoint().getX(), R.getPoint().getY(),R.getLargeur(),R.getHauteur());



}

sachant que j'ai deja déclarer ma classe rectangle avec ces attributs et ces méthodes

mon probléme c'est dans : panel1.Invalidate();
quand je fais l'appel de cette fonction dans l'évenement click de la souris dans le panel, le rectangle que j'ai déjà dessiner disparut et il me dessine un autre dans le nouveau emplacement où je viens de cliquer, ma question est : pour enregistrer les formes que je déssine et garder le tout sur le panel, qu'est que je dois faire?
quand je supprime la méthode panel1.Invalidate(); il me dessine rien, ça fonctionne pas!
et merci !