[英]How do I set a dialog box to the position of the cursor?
我正在使用 WPF 开发一个应用程序,并在其中创建用户控件。 当我单击鼠标右键时,我想在与 cursor 相同的 position 中显示一个对话框,但我很困惑如何做到这一点。
以下代码在单击鼠标右键时打开一个Window
。 Window
位于鼠标指针处:
主窗口.xaml.cs
partial class MainWindow : Window
{
protected override void OnMouseRightButtonUp(MouseButtonEventArgs e)
{
base.OnMouseRightButtonUp(e);
var mousePointerPosition = PointToScreen(e.GetPosition(this));
var dialog = new Window()
{
Top = mousePointerPosition.Y,
Left = mousePointerPosition.X,
Width = 100,
Height = 100
};
dialog.ShowDialog();
}
}
我很确定您正在寻找的内容已经可用并已收集 ContextMenu。
<Button Content="Right-click me!">
<Button.ContextMenu>
<ContextMenu>
<MenuItem Header="Menu item 1" />
<MenuItem Header="Menu item 2" />
<Separator />
<MenuItem Header="Menu item 3" />
</ContextMenu>
</Button.ContextMenu>
</Button>
请参阅以下参考:
https://www.wpf-tutorial.com/common-interface-controls/contextmenu/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.