【问题标题】:Check mark and image next to mainMenu item主菜单项旁边的复选标记和图像
【发布时间】:2012-10-10 07:56:17
【问题描述】:

我希望能够在mainMenu 中的菜单项旁边显示图像和复选标记。目前,要么是图像,要么是复选标记,但恐怕不能同时进行。

如果我添加menuItemOption1.Checked = true;,该项目被选中但图像不再显示:

我没有找到任何其他方式向用户显示某些菜单项已被选中(无法更改文本颜色),有人能想到什么方式吗?

(我想保持图像显示,因为我的菜单项名称不那么明显,并且图像是用户理解菜单的好方法。)

【问题讨论】:

标签: c# winforms menu usability


【解决方案1】:

我通过简单地更改菜单文本解决了这个问题:

menuItemOption1.Text = "[✓] Option 1";

【讨论】:

    【解决方案2】:

    你不能从设计者那里做,但试着把它添加到你的代码中:

    public Form1() {
      InitializeComponent();
    
      ((ToolStripDropDownMenu)optionsMenu.DropDown).ShowCheckMargin = true;
      ((ToolStripDropDownMenu)optionsMenu.DropDown).ShowImageMargin = true;
    }
    

    【讨论】:

    • 这适用于menuStrip,但不适用于mainMenumenuItem 上没有DropDown 属性。
    • @Otiel MainMenu 对象没有图像,所以您一定已经在绘制它了,不是吗? MainMenu 被 MenuStrip 取代。有什么理由不使用 MenuStrip?
    • 我正在使用VistaMenu 将图像添加到MainMenu(但我相信,如果您不想使用任何第三方工具,添加图像就像添加一样简单ImageListmainMenu - 虽然我还没有尝试过)。
    • 不知道MainMenuMenuStrip 替换了。我用MainMenus 替换了我的MenuStrips,以遵循Windows 的外观和感觉,基本上如this article 中所述。是不是搞错了?
    • @Otiel Microsoft 不会在这里帮助您。 MenuStrip 将以其样式呈现,而不是操作系统的样式,而 MainMenu 会。如果它那么重要,那么你有很多绘画要做。 :-(
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-05
    • 2019-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多