The relationship between the two is that the AutoScrollPosition is offsetting the PictureBox.Location relative to the Panel.Location, and the point in the PictureBox is an offset from the PistureBox.Location.
[Edit]
To change the AutoScrollPosition, you need to assign it a Point object that represents the offset that you want it to move to. In other words:
panel1.AutoScrollPosition = new Point(50,100);
would cause the horizontal scrollbar to move 50 points to the right and the vertical scrollbar would move down 100 points. It sounds like you are trying to display a map and have it automatically center when the user clicks on it, is that right? If so, your Mouseclick event would do something like this:
private void pictureBox1_MouseClick ( object sender, MouseEventArgs e )
{
Point panelcenter = new Point ( ( this.panel1.Width / 2 ), ( this.panel1.Height / 2 ) );
Point offsetinpicturebox = new Point ( ( this.pictureBox1.Location.X + e.Location.X ), ( this.pictureBox1.Location.Y + e.Location.Y ) );
Point offsetfromcenter = new Point ( ( panelcenter.X - offsetinpicturebox.X ), ( panelcenter.Y - offsetinpicturebox.Y ) );
this.panel1.AutoScrollPosition = new Point (
( Math.Abs ( this.panel1.AutoScrollPosition.X ) + ( -1 * offsetfromcenter.X ) ),
( Math.Abs ( this.panel1.AutoScrollPosition.Y ) + ( -1 * offsetfromcenter.Y ) )
);
}
Note:
It is important to realize that when you retrieve the AutoScrollPosition, it will return with negative values. However, when you assign it, you need to assign positive values.