2017-08-17 89 views
0

每当我创建一个ContextMenu时,出于某种原因它出现在鼠标的左侧,而不是通常的右侧。我没有调整ContextMenu对象中的所有设置,我只是在实例化它,添加项目并将IsOpen设置为true。我使用的是MahApps.Metro,窗口也有一个自定义的WindowChrome,但我不知道这与这个奇怪的行为有什么关系。这从来没有发生过我,我希望有人能解释为什么会发生这种情况,以及如何解决这个问题。WPF ContextMenu在鼠标左侧的附件

这是我的代码:

ContextMenu = new ContextMenu(); 

MenuItem item = new MenuItem(); 
item.Header = "Add Category"; 
item.Click += (o, args) => 
{ 
    ... 
}; 
ContextMenu.Items.Add(item); 
ContextMenu.IsOpen = true; 

附:这不是因为菜单没有足够的空间而导致的,我在屏幕的最左侧进行了测试。

+0

尽管它的一种不寻常的,尝试设置[ContextMenu.PlacementTarget](https://msdn.microsoft.com/en-us/library/system.windows.controls.contextmenu.placementtarget(v = vs.110)。 aspx) –

+0

特定于代码创建的上下文菜单的行为还是与预定义的xaml上下文菜单相同? – grek40

+0

预定义的菜单没有什么区别。 –

回答

0

我终于找到了解决方案。我所要做的就是将Windows 10平板电脑设置从右撇子改为左撇子。