gpt4 book ai didi

c# - 在 WPF 中完成拖动时创建上下文菜单

转载 作者:太空宇宙 更新时间:2023-11-03 11:42:49 25 4
gpt4 key购买 nike

我正在研究类似于 Maya 的 HyperGraph 的节点图 View ,我可以在其中通过拖放连接节点。因为目标节点可以有多个输入,所以我想创建一个临时的 ContextMenu 来选择输入,如下面的模型所示:

http://www.pixtur.org/images/uploaded/0000/0696/large.jpg

我尝试了很长时间来触发上下文菜单的创建或打开。看起来 Win32 TrackPopupMenu 的功能大致符合我的要求。是否有 WPF/C# 等效项?

谢谢图片

最佳答案

我建议另一种解决方案:

在此示例中,一个按钮将在右键单击时弹出一个包含一个条目(“复制”)的上下文菜单。如果单击“复制”上下文菜单项,则会生成控制台输出。

[..]
var button = new Button();
button.Content = "SomeButtonName";
button.MouseUp += HandleMouseUp;
[..]


private void HandleMouseUp(object sender, MouseButtonEventArgs e)
{
var senderUIControl = sender as Control;

var contextMenu = new ContextMenu();

var item = new MenuItem();
item.Header = "Copy";
item.Click += (o, a) => {
Console.WriteLine("Copy item clicked");
};
contextMenu.Items.Add(item);

senderUIControl.ContextMenu = contextMenu;
}

关于c# - 在 WPF 中完成拖动时创建上下文菜单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4280893/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com