我正在重构一段代码,逐行查看所有代码。
我遇到了一个事件处理程序:
private void mnuUpdate_Click(object sender, EventArgs e)
...并且,不知道哪个菜单项调用了这个(菜单项名称并不总是与其标签匹配,甚至接近),很好奇。
表单上的主菜单在其子项中没有这样的菜单项。
我右击事件处理程序,选择“Find Usages*”并被引导到这里:
this.mnuUpdate.Text = "Update";
this.mnuUpdate.Click += new System.EventHandler(this.mnuUpdate_Click);
(这是一个早于 .NET 的部分类优点的古老应用程序,所以它在同一个文件中)
在设计器中的表单上,当我从属性页面组合框中选择“mnuUpdate”时,表单上的 mainMenu 完全消失了。
我怎样才能找到这个逃亡的菜单项?窗体上没有popupMenu或contextMenu,只有mainMenu控件……???
唯一的其他用法是:
if (ResetConnectionFetchForm) mnuUpdate_Click(sender, e);
这是否可能只是一个应该转换为“常规旧”方法的幻像菜单项?
更新
正如最聪明的乔治曾经说过的那样,“好奇者和好奇者”。现在我发现这个:
public void btnCancel_Click(object sender, EventArgs e)
...虽然它是从代码中的七个位置调用的,但表单上没有 btnCancel ...这是一个“假”按钮单击事件。哦,我的兰塔!!!
因此,我将其替换为具有完全相同代码的无参数私有方法(它不使用发送方或事件参数)。
如果写这个 cockamamie glob 的水果蛋糕意大利面的猫是故意想让下一只猫(我)发疯,它工作得很好,并且会制作一个很好的 Poe 风格的故事或 Hitchcock 风格的电影。
...我明白了...死代码!!!