Очевидно, что прямой ответ на вопрос - «Нет», но как мне лучше всего добиться такого эффекта? Чтобы объяснить, вот немного предыстории ...
У меня есть приложение, которое отображает изображение плюс несколько слоев наложенных фигур на этом изображении. Все они размещены в ячейке таблицы, перекрывая друг друга, и изображение находится внизу локального z-порядка. Для ускорения наложения реализованы как классы, производные от FrameworkElement, и они создают и управляют своими собственными визуальными элементами.
Вот базовая диаграмма (хотя и взорванная в 3D) того, как слои расположены и какое взаимодействие они имеют / нуждаются:
overlapped_controls.png http://www.afterbang.co.uk/mal/stackoverflow/overlapped_controls.png
Как видите, верхний оверлей должен позволять пользователю перетаскивать новый прямоугольник в любом месте изображения . Для этого я дал ему прозрачный фон, действующий как стеклянная пластина, на которой вы можете рисовать. Очевидным недостатком этого является то, что он останавливает все события мыши, проходящие через нижние уровни.
Мне бы очень хотелось отлавливать события левой кнопки мыши в прозрачной области этого верхнего слоя и позволять другим событиям попадать в слои дальше по z-порядку.
Есть ли шаблон WPF-стиля, которому я должен следовать для такого рода вещей? Какая-нибудь лучшая практика или техника?
Я все еще довольно новичок в WPF, но хочу написать решение, соответствующее API. Спасибо.