private void pbImage_Paint(object sender, PaintEventArgs e) { foreach (var c in lbChars.Items) { CharHolder ch = c as CharHolder; if (ch.DrawRect.IsEmpty) { continue; } Rectangle rect = ch.GetRelativePosition(PicBoxRelativeImgRect); Rectangle imgOffset = PicBoxRelativeImgRect; rect.X += imgOffset.X; rect.Y += imgOffset.Y; e.Graphics.DrawRectangle(this.existentPen, rect); } if (this.startPoint.HasValue && this.endPoint.HasValue) { Rectangle rect = GetRectanglePosition(this.startPoint.Value, this.endPoint.Value); Rectangle imgOffset = PicBoxRelativeImgRect; rect.X += imgOffset.X; rect.Y += imgOffset.Y; e.Graphics.DrawRectangle(this.drawPen, rect); } }
private void button1_Click(object sender, EventArgs e) { CharHolder ch = lbChars.SelectedItem as CharHolder; Rectangle rect = ch.GetRelativePosition(new Rectangle(0, 0, pbImage.Image.Width, pbImage.Image.Height)); //Rectangle imgOffset = PicBoxRelativeImgRect; //rect.X += imgOffset.X; //rect.Y += imgOffset.Y; MessageBox.Show(rect.ToString()); }