gpt4 book ai didi

c# 如何在运行时添加 contextMenuStrip 项?

转载 作者:行者123 更新时间:2023-11-30 21:07:52 26 4
gpt4 key购买 nike

我确信这个问题的答案之前已经发布过。请原谅我,我想我只是没有想到正确的搜索字符串。

我拥有的是分配给拨号器托盘图标的上下文菜单条。这个想法是让用户设置各种号码并从菜单中选择用户定义的号码并启动拨号。

因此弹出的菜单包含PresetsSetupExit。我希望预设菜单打开一个新树,列出用户定义的编号。我还希望每次加载应用程序时都从 xml 文件中填充它。

我的问题是我不知道如何动态填充子菜单项并为其赋予功能。

那么我如何在启动时将用户定义的号码添加到预设 -> (userNumber1, usernumber2, userNumber3) 然后在单击时调用 dial() 函数?


所以我找到了如何添加到列表中...我现在觉得问这个问题很傻。对于任何其他想知道那个的人,列表项都有一个名字。我的情况是名称属性是“presetsToolStripMenuItem”

所以要添加一个项目给它调用名称

presetsToolStripMenuItem.DropDownItems.Add(string text)

不继续前进。我现在被困在试图弄清楚如何将事件分配给新添加的功能。我确实找到了

presetsToolStripMenuItem.DropDownItems.Add(string text, image, eventargs)

我正在纠结这个问题。也许我需要停下来,稍后再回来。也许如果有人可以向我提供使用此行调用 function(); 的示例,我将不胜感激。

最佳答案

对于任何感兴趣的人,我想出了在运行时添加上下文菜单项并能够调用函数的解决方案。

如前所述,要将子菜单项添加到父类别,请使用 parent.name。所以在我的例子中,预设菜单项名称是“presetsToolStripMenuItem”

为了添加函数,我使用了 3 参数方法。

 ToolStripMenuItem.DropdownItems.Add("string name", image, eventargs);

所以我的代码是这样的:

presetsToolStripMenuItem.DropDownItems.Add("added2", null, disp);

void disp(object sender, EventArgs e)
{
MessageBox.Show("It works!");
}

关于c# 如何在运行时添加 contextMenuStrip 项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10038451/

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