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;
附:这不是因为菜单没有足够的空间而导致的,我在屏幕的最左侧进行了测试。
尽管它的一种不寻常的,尝试设置[ContextMenu.PlacementTarget](https://msdn.microsoft.com/en-us/library/system.windows.controls.contextmenu.placementtarget(v = vs.110)。 aspx) –
特定于代码创建的上下文菜单的行为还是与预定义的xaml上下文菜单相同? – grek40
预定义的菜单没有什么区别。 –