基本的にカスタムコントロールを表示するSilverlightアプリケーションをユーザーが右クリックしたときに、ポップアップの効果を実現しようとしています。私はコンテキストメニューを使用していますが、ユーザーがマウスを合わせたときにそれ自体が強調表示されないようにコンテキストメニューのスタイルを設定するのに問題があることを除いて、すべてがうまく機能しています。
これが私がやろうとしていることの抜粋です:
<toolkit:ContextMenuService.ContextMenu>
<toolkit:ContextMenu Height="100" Background="Transparent" HorizontalOffset="-100" VerticalOffset="-100" Margin="98,112,0,0" Name="contextMenu1" VerticalAlignment="Top" Width="200">
<toolkit:ContextMenu.Style>
<Style TargetType="toolkit:ContextMenu">
<Setter Property="BorderThickness" Value="0" />
<Setter Property="Padding" Value="0" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="toolkit:ContextMenu">
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" CornerRadius="2">
<Grid>
<ItemsPresenter Margin="{TemplateBinding Padding}" />
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</toolkit:ContextMenu.Style>
<Canvas Width="100" Height="100" Background="Transparent">
<Button Width="100" Height="30">Something</Button>
<Button Width="100" Height="30" Canvas.Top="70">Something Else</Button>
</Canvas>
</toolkit:ContextMenu>
</toolkit:ContextMenuService.ContextMenu>
メニューが表示されているときは、必要な効果が得られます(2つのボタンがマウスの近くに浮かんでいます)が、メニューの上にマウスを置くと、コンテキストメニューのボックス全体が強調表示されます。
これを示すサンプルアプリは次のとおりです。
http://github.com/vermeeca/ContextMenuDemo
その効果を無効にするにはどうすればよいですか?