当用户右键单击显示基本上自定义控件的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>
当菜单可见时,我得到了我想要的效果(两个按钮只是漂浮在鼠标附近),但是当我将鼠标悬停在它上面时,上下文菜单的整个框突出显示 .
这是一个示例应用程序,演示了这一点:
http://github.com/vermeeca/ContextMenuDemo
如何禁用该效果?
1 回答
感谢一位同事,我得到了解决方案 . 我只需要在ContextMenu上设置ItemContainerStyle .
然后