When I run the following code
pMin = {-3, -3}; pMax = {3, 3}; range = {pMin, pMax}; Manipulate[ GraphicsGrid[ { {Graphics[Locator[p], PlotRange -> range]}, {Graphics[Line[{{0, 0}, p}]]} }, Frame -> All ], {{p, {1, 1}}, Locator} ]

I expect the Locator control to be within the boundaries of the first graph, but instead, it can move across the entire GraphicsGrid. Is there an error in my code?
I also tried
{{p, {1, 1}}, pMin, pMax, Locator}
instead
{{p, {1, 1}}, Locator}
But this behaves completely wrong.
UPDATE
Thanks to everyone, this is my final decision:
Manipulate[ distr1 = BinormalDistribution[p1, {1, 1}, \[Rho]1]; distr2 = BinormalDistribution[p2, {1, 1}, \[Rho]2]; Grid[ { {Graphics[{Locator[p1], Locator[p2]}, PlotRange -> {{-5, 5}, {-5, 5}}]}, {Plot3D[{PDF[distr1, {x, y}], PDF[distr2, {x, y}]}, {x, -5, 5}, {y, -5, 5}, PlotRange -> All]} }], {{\[Rho]1, 0}, -0.9, 0.9}, {{\[Rho]2, 0}, -0.9, 0.9}, {{p1, {1, 1}}, Locator}, {{p2, {1, 1}}, Locator} ]

UPDATE
Now the problem is that I cannot resize and rotate the bottom three-dimensional graph. Does anyone know how to fix this? I will return to the solution with two Slider2D objects.