【问题标题】:How can i reference a MenuItem?如何引用 MenuItem?
【发布时间】:2015-06-10 20:10:30
【问题描述】:

我将 MenuItems 添加到我的 ContextMenu 中,如下所示:

mnuContextMenu.MenuItems.Add("Delete", DeleteFile);

现在我想禁用这个 MenuItem,像这样:

x.Enabled = false;

我必须为 x 使用什么 MenuItem 参考?

【问题讨论】:

  • DeleteFile.Enabled = false
  • 看起来像是作业或面试题...

标签: c# contextmenu menuitem


【解决方案1】:

您没有任何东西可以直接引用它。您可以使用 MenuItems 属性的索引器获取它:

mnuContextMenu.MenuItems[0].Enabled = false; // if it were the first item

或者你可以在创建时参考:

var deleteMenuItem = new MenuItem("Delete", DeleteFile);
mnuContextMenu.MenuItems.Add(deleteMenuItem);

然后你就有了以后使用的参考:

deleteMenuItem.Enabled = false;

如果您打算在当前函数之外使用它,则可能需要将其存储为类的私有数据成员,而不是局部变量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多