Jak wybrać obszar na PictureBox.Image za pomocą myszy w C #

chciałem po prostu wybrać coś na moim zdjęciu boxbox.image, ale stało się to po prostu gorsze niż trochę irytująca sytuacja. Myślałem o innym pudełku z obrazkami nad głównym boxem do zdjęć, ale wydawało mi się to tak leniwe. Muszę wiedzieć, czy istnieje sposób na utworzenie obszaru zaznaczenia (który będzie półprzezroczystym niebieskim obszarem) na obrazie picturebox.image, który narysuję myszką i nie powinien on zmieniać obrazu, nad którym pracuję.

próba:

    // Start Rectangle
    //
    private void pictureBox1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
    {
        // Determine the initial rectangle coordinates...
        RectStartPoint = e.Location;
        Invalidate();
    }

    // Draw Rectangle
    //
    private void pictureBox1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
    {
        if (e.Button != MouseButtons.Left)
            return;
        Point tempEndPoint = e.Location;
        Rect =
            new Rectangle(
                Math.Min(RectStartPoint.X, tempEndPoint.X),
                Math.Min(RectStartPoint.Y, tempEndPoint.Y),
                Math.Abs(RectStartPoint.X - tempEndPoint.X),
                Math.Abs(RectStartPoint.Y - tempEndPoint.Y));
        Invalidate(Rect);
    }

    // Draw Area
    //
    private void pictureBox1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
    {
        // Draw the rectangle...
        if (pictureBox1.Image != null)
        {
            Brush brush = new SolidBrush(Color.FromArgb(128, 72, 145, 220));
            e.Graphics.FillRectangle(brush, Rect);
        }
    }

questionAnswers(2)

yourAnswerToTheQuestion