Добавьте ContextMenuStrip
к вашей форме.
НЕ выбирайте его как свойство ContextMenuStrip
вашего pictureBox1
, так как это автоматически откроет контекстное меню. Мы не хотим этого делать, потому что мы хотим проверить, действительно ли мышь указывает на нарисованный прямоугольник, и только затем открыть контекстное меню.
private void pictureBox1_MouseClick(object sender, MouseEventArgs e)
{
Rectangle rect = PadRects
.Where(r => r.Contains(e.Location))
.FirstOrDefault();
if (!rect.IsEmpty) {
_clickedRectangle = rect; // Save the rectangle in a field to make it available
// to the context menu item handler.
contextMenuStrip1.Show(pictureBox1, e.Location);
}
}