残念ながら、私はまだコメントをするのに十分な評判を持っていないので、答えとして入れておきます. 最近、Flash で非常によく似た問題が発生し、WindowsFormsHost とOverlays/Adornersを使用することになりました。ちょうど私の2セント。
ポップアップ ウィンドウとしてオーバーレイを作成する XAML を次に示します。
<Grid>
<Canvas >
<WebBrowser x:Name="wbMain" Width="800" Height="500"></WebBrowser>
<Popup x:Name="puOverlay" AllowsTransparency="True" Placement="Bottom" PlacementTarget="{Binding ElementName=wbMain}">
<Ellipse Canvas.Left="0" Canvas.Top="0" Height="50" Name="headEllipse" Stroke="Black" Fill="Orange" Width="50" Canvas.ZIndex="5"/>
</Popup>
<Ellipse Canvas.Left="0" Canvas.Top="0" Height="50" Name="headEllipse1" Stroke="Black" Fill="Orange" Width="50" Canvas.ZIndex="5"/>
</Canvas>
</Grid>
簡単にするために、オーバーレイを 1 つの楕円に減らしました。Web ブラウザーは WindowsFormsHost でホストされます。これを配置して表示するコードは次のとおりです。
public MainWindow()
{
InitializeComponent();
puOverlay.VerticalOffset = -60;
puOverlay.HorizontalOffset = (wbMain.ActualWidth / 2) - 20;
puOverlay.IsOpen = true;
...
}
非常に簡単ですが、まだ不明な点がある場合は遠慮なくお尋ねください。