【问题标题】:How do I delete the generated function from accidentally double clicking on a button? [duplicate]如何从意外双击按钮中删除生成的函数? [复制]
【发布时间】:2013-12-10 10:15:52
【问题描述】:

我正在开发一个带有按钮的表单应用程序。当我在设计器表单上双击它时,它会自动创建一个私有 void saveButton_Click() 函数。

如何在 Visual Studio 2012 中删除此函数而不产生错误?如果我删除该方法,它将创建一个错误,指出“文件不包含 saveButton_click() 的定义并且没有扩展方法‘save_button_click’。那么我该如何完全删除这个方法,因为我在双击时不小心创建了这个方法设计器表单上的按钮?

我无法撤消,因为在尝试解决此问题之前我已经进行了其他更改。我应该从 Visual Studio 2012 中的另一个文件中删除某些内容吗?

编辑:我无法撤消 (CTRL - Z),因为我已保存文件并进行了上述其他更改。我正在寻找的是一种让 Visual Studio 删除自动双击按钮时的所有事件处理程序的方法。

【问题讨论】:

    标签: c# visual-studio visual-studio-2012


    【解决方案1】:

    您会看到此错误消息,因为 Visual Studio 在您双击按钮时添加了两件事:

    1) 它在代码文件中创建空事件处理程序

    void saveButton_click(object sender, EventArgs e)
    {
    
    }
    

    2) 在设计器生成的代码文件中,它将此处理程序订阅到按钮单击事件

    saveButton.Click += new EventHandler(saveButton_click);
    

    当您删除处理程序时,您仍然在设计器文件中引用它。并且编译器找不到您刚刚删除的 saveButton_click 方法。

    如果意外按钮单击是您所做的唯一更改,则只需单击Ctrl-Z 即可恢复操作(处理程序和事件订阅都将被删除)。在这种情况下你会看到这个对话框,不要害怕点击Yes

    否则,您应该删除订阅(手动,通过编辑设计器文件或from designer)并删除处理程序(仅手动)。

    【讨论】:

    • OP ninja-edited “我无法撤消,因为在尝试修复此问题之前我已经完成了其他更改” in. :)
    • @CodeCaster 啊那些忍者 :)
    • 此操作会撤消在方法生成之前意外进行的一些额外更改。
    【解决方案2】:

    Winforms - Visually remove button click event

    这显示了如何使用 Visual Studio 2012.F4 和属性选项卡下删除事件处理程序。

    【讨论】:

      【解决方案3】:

      删除事件方法,构建,然后删除所有其他错误。

      【讨论】:

        猜你喜欢
        • 2010-09-08
        • 2011-04-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-12-07
        • 2016-04-29
        • 1970-01-01
        相关资源
        最近更新 更多