我有一个上下文菜单,我声明嵌套在其他一些xaml中,如下所示:
<ContextMenu Name="cm2">
<ContextMenu.BitmapEffect>
<OuterGlowBitmapEffect />
</ContextMenu.BitmapEffect>
<MenuItem Header="Chat" Click="btnChat_Click" CommandParameter="{Binding RelativeSource={RelativeSource Self}, Path=Parent}"/>
<MenuItem Header="Send Email" Click="btnEmail_Click" CommandParameter="{Binding RelativeSource={RelativeSource Self}, Path=Parent}"/>
<MenuItem Header="Edit Information" Click="btnEdit_Click" CommandParameter="{Binding RelativeSource={RelativeSource Self}, Path=Parent}"/>
<MenuItem Header="Add New Contact" Click="btnAddNewContact_Click" CommandParameter="{Binding RelativeSource={RelativeSource Self}, Path=Parent}"/>
</ContextMenu>
这一切都很好,并且在Windows 7, Vista and XP
中有99%的时间。但是,我有两个人使用我的软件,当他们右键单击此context menu
所在的区域时,上下文菜单显示在主窗体后面。这只发生在使用XP的人身上,但只是XP users
的一小部分。
此上下文菜单所在的主窗口定义为:
<Window x:Class="Application.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Application" mc:Ignorable="d"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:p="clr-namespace:Application.Properties"
Loaded="Window_Loaded" ResizeMode="CanResizeWithGrip" Topmost="False"
WindowStyle="None" Icon="/Application;component/Images/image.png"
Background="{x:Null}" AllowsTransparency="True" Foreground="White"
Width="682" Height="389" HorizontalAlignment="Center" VerticalAlignment="Center"
Closing="OnClose" StateChanged="OnStateChanged" IsVisibleChanged="OnIsVisibleChanged" MinWidth="650" MinHeight="300">
我继承了这个项目,并没有接近Wpf的专家,所以这可能是一件非常简单的事情,我忽略了。