Obviously, the straightforward answer to the question is "No", but what's the best way for me to achieve that kind of effect? To explain, here's a bit of background...
I have an app that displays an Image plus a couple of layers of overlaid shapes on that image. All of these are placed within a Grid cell, overlapping each other, with the image at the bottom of the local z-order. For speed, the overlays are implemented as classes derived from FrameworkElement and they create and manage their own visuals.
Here's a basic diagram (albeit exploded into 3D) of how the layers are arranged and what interaction they have/need:
As you can see, the upper overlay must allow the user to drag out a new rectangle anywhere in the image. To that end, I've given it a transparent background, acting like a plate of glass on which you can draw. The obvious drawback of this is that it stops all mouse events passing through down to the lower layers.
I'd really like to only trap the left mouse button's events in that top layer's transparent area and let other events hit layers further down the z-order.
Is there a WPF-minded pattern I should be following for this kind of thing? Any kind of best practice or technique?
I'm still fairly fresh to WPF, but want to write a solution that's in tune with the API. Thanks.