2011-06-12 115 views
1

我在靠墙试图弄清楚这一点,我在我的GUI上有一个水平菜单,并将helpMenuItem设置为隐藏几分钟。我将它设置为可见,现在,当我悬停/单击helpMenuItem时,它不显示下拉菜单项。其他菜单项下降工作正常,这是唯一不会显示下拉与相应的“userManualMenuItem”里面。Visual Studio 2008,下拉菜单项不能正常工作

我试过重建,清理和关闭并重新打开视觉工作室,那些没有帮助。以下是我的菜单中的帮助按钮和下拉菜单项“用户手册”的示例,不会显示。此外,视觉工作室为有问题的物品生成代码。

感谢您的任何帮助。


文件|编辑|帮助
................ |用户手册|


 // 
     // helpMenuItem 
     // 
     this.helpMenuItem.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] { 
      this.userManualMenuItem}); 
     this.helpMenuItem.Name = "helpMenuItem"; 
     this.helpMenuItem.Size = new System.Drawing.Size(44, 20); 
     this.helpMenuItem.Text = "Help"; 
     // 
     // userManualMenuItem 
     // 
     this.userManualMenuItem.Name = "userManualMenuItem"; 
     this.userManualMenuItem.Size = new System.Drawing.Size(152, 22); 
     this.userManualMenuItem.Text = "User Manual"; 
     this.userManualMenuItem.Click += new System.EventHandler(this.userManualMenuItem_Click); 
     // 
     // menu 
     // 
     this.menu.Items.AddRange(new System.Windows.Forms.ToolStripItem[] { 
      this.fileMenuItem, 
      this.setupMenuItem, 
      this.subcontractorsMenuItem, 
      this.reportsMenuItem, 
      this.windowMenuItem, 
      this.helpMenuItem}); 
     this.menu.Location = new System.Drawing.Point(0, 0); 
     this.menu.Name = "menu"; 
     this.menu.Size = new System.Drawing.Size(714, 24); 
     this.menu.TabIndex = 4; 
     this.menu.Text = "menu"; 

编辑:我在helpMenuItem提出另一个菜单项,并出现了,当我跑的程序。然而,其他的“userManualMenuItem”仍然没有出现。然后,我从GUI中删除了旧的userManualMenuItem,并将新的名称重命名为相同的“userManualMenuItem”,并且在再次打开该程序后,它未显示出来。似乎菜单项本身有问题,而不是帮助下拉菜单项...

+0

你可以显示你用来隐藏/显示菜单项的代码吗? – 2011-06-12 01:06:39

+2

在上面的代码片段中没有什么奇怪的,我建议你为userManualMenuItem上的VisibleChanged事件添加一个事件列表器,然后设置一个断点,一旦到达,尝试遍历调用堆栈以找到导致菜单的代码行消失 – Waleed 2011-06-12 01:09:14

+0

找到它。由于某些原因,Visual Studio生成的一些杂散代码在我更改可见字段的状态时未删除。感谢Waleed的提示。如果您想将您的评论写入答案,我很乐意接受它作为解决我的问题的方法。 – CODe 2011-06-12 01:12:22

回答

0

上面的代码片段中没有什么奇怪的,我建议你为你的VisibleChanged事件添加一个事件列表器userManualMenuItem,然后设置一个中断点,一旦到达,尝试遍历调用堆栈以查找导致菜单消失的代码行。