由于某种原因,无论将toolstripmenuitem添加到上下文菜单多少次,它总是说上下文菜单不包含该项目。
ToolStripMenuItem Colour = new ToolStripMenuItem("Colour");
ctmFile.Show(Cursor.Position);
Selecteditem = lvFiles.FocusedItem.Text.ToString();
if (lvFiles.FocusedItem.ImageKey.ToString() == "Folder")
{
if (ctmFile.Items.Contains(Colour) == false)
{
ctmFile.Items.Add(Colour);
}
}
else
{
if(ctmFile.Items.Contains(Colour))
{
ctmFile.Items.Remove(Colour);
}
}
最佳答案
只是为了在 Ed 的答案之上添加,我建议使用键:
ctmFile.Show(Cursor.Position);
Selecteditem = lvFiles.FocusedItem.Text.ToString();
if (lvFiles.FocusedItem.ImageKey.ToString() == "Folder")
{
if (!ctmFile.Items.ContainsKey("Colour"))
{
ToolStripMenuItem Colour = new ToolStripMenuItem("Colour");
Colour.Name= "Colour"; //Add a name (key) to your menu.
ctmFile.Items.Add(Colour);
}
}
else
{
if (ctmFile.Items.ContainsKey("Colour"))
{
ctmFile.Items.RemoveByKey("Colour");
}
}
关于c# - 动态添加上下文菜单项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49943297/