C# Picturebox OnMouseClick坐标与控件而非表单相关

C# Picturebox OnMouseClick坐标与控件而非表单相关,c#,winforms,coordinates,picturebox,mousedown,C#,Winforms,Coordinates,Picturebox,Mousedown,我有一个windows窗体,里面有一个PictureBox控件,我用一个图像填充该控件 当转到MouseDown事件时,能够获得坐标,但是是整个表单的坐标,而不仅仅是控件的坐标,所以我没有得到(10,15)的坐标,而是得到(110,40),这是因为它得到了表单的鼠标位置 我可以只获取包含在PictureBox控件中的坐标吗?使用x-PictureBox.Left和y-PictureBox.Top 或 在事件处理程序中为PictureBox而不是表单编写代码。使用x-PictureBox.Left

我有一个windows窗体,里面有一个PictureBox控件,我用一个图像填充该控件

当转到MouseDown事件时,能够获得坐标,但是是整个表单的坐标,而不仅仅是控件的坐标,所以我没有得到
(10,15)
的坐标,而是得到
(110,40)
,这是因为它得到了表单的鼠标位置


我可以只获取包含在PictureBox控件中的
坐标吗?

使用
x-PictureBox.Left
y-PictureBox.Top


在事件处理程序中为PictureBox而不是表单编写代码。

使用
x-PictureBox.Left
y-PictureBox.Top

在PictureBox的事件处理程序中编写代码,而不是表单。

试试这个

private void PictureBox1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
  int x = e.x - PictureBox1.Left ;
  int y = e.y - PictureBox1.Top ;

  MessageBox.Show(x.tostring + "," + y.tostring); 
 }
试试这个

private void PictureBox1_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
  int x = e.x - PictureBox1.Left ;
  int y = e.y - PictureBox1.Top ;

  MessageBox.Show(x.tostring + "," + y.tostring); 
 }

请出示鼠标事件代码好吗?请出示鼠标事件代码好吗?