Bonsoir,
Tout dépend du control d'origine, si tu peux trapper l'evenement MouseDown tu doit pouvoir ensuite positioner la propriété capture de la forme, ce qui lui permetra de récuperer l'evenement MouseDown sur un autre controle.
reste plus qu'ensuite à parcourir la liste des control pour savoir ou le click à eu lieu.
Mon explication ne me parait pas claire, donc voila un exemple:
un click sur un picture box déclenche la capture, ensuite on regarde ou le 2eme click à eu lieu/
private void pictureBox1_Click(object sender, EventArgs e)
{
this.Capture = true;
Cursor.Current = Cursors.Hand;
}
private void Form1_MouseDown(object sender, MouseEventArgs e)
{
this.Capture = false;
Cursor.Current = Cursors.Default ;
foreach (Control c in Controls)
{
Rectangle rect = new Rectangle(c.Location, c.Size);
if (rect.Contains(e.X, e.Y))
MessageBox.Show("click in " + c.Name);
}
}C# is amazing, enjoy it!