我在Windows窗体应用程序中使用menuStrip,我想以编程方式将可用端口添加为subMenu。我使用mouseHover来做到这一点,但是它会在每一个动作中添加相同的物品。我的意思是它在每一个动作中都会增加物品。我该如何防止并实现一次添加项目(端口)。如何防止在c#中的MenuStrip中多次添加项目?
这是我的代码;
String[] ports = SerialPort.GetPortNames();
private void cOMToolStripMenuItem_MouseHover(object sender, EventArgs e)
{
foreach (var item in ports)
{
ToolStripItem subItem = new ToolStripMenuItem(item);
cOMToolStripMenuItem.DropDownItems.Add(subItem);
}
}
如何在添加它们之前清除所有项目? – Pikoh
你为什么不在表单的'Load'事件上做这件事? – Nino
如果你不清楚代码清除,这里是一个有用的链接:[添加和删除MenuStrip中的ToolStripMenuItem和WinForms中的DropDownItems](https://stackoverflow.com/a/4041900/6741868) –