Как создать полупрозрачное окно в WPF, которое позволяет проходить событиям мыши

Я пытаюсь создать эффект, аналогичный функции Lights out / lights dim в Adobe Lightroom (http://www.youtube.com/watch?v=87hNd3vaENE) кроме как в WPF.

Я попытался создать еще одно окно поверх моего существующего окна, сделать его прозрачным и наложить полупрозрачную геометрию пути. Но я хочу, чтобы события мыши могли проходить через это полупрозрачное окно (в окнах ниже).

Это упрощенная версия того, что у меня есть:

<Window x:Class="LightsOut.MaskWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    AllowsTransparency="True" 
    WindowStyle="None"
    ShowInTaskbar="False"
    Topmost="True" 
    Background="Transparent">

<Grid>

    <Button HorizontalAlignment="Left" Height="20" Width="60">click</Button>

    <Path IsHitTestVisible="False" Stroke="Black" Fill="Black" Opacity="0.3">

        <Path.Data>
            <RectangleGeometry Rect="0,0,1000,1000 "/>
        </Path.Data>
    </Path>             

</Grid>

Окно полностью прозрачно, поэтому в тех местах, где путь не перекрывается, события мыши проходят сквозь него. Все идет нормально. IsHitTestvisible имеет значение false для объекта пути. Таким образом, события мыши будут проходить через него к другим элементам управления в той же форме (т.е. вы можете нажать на кнопку, потому что она находится в той же форме).

Но события мыши не будут проходить через объект Path в окна, которые находятся под ним.

Есть идеи? Или лучшие способы решить эту проблему?

Благодарю.

Ответы на вопрос(1)

Ваш ответ на вопрос