.NET 5.0 WinForms Button_Click 事件代码不是 运行 & 多个问题

.NET 5.0 WinForms Button_Click event code not running & multiple issues

问题

我正在尝试调试带有按钮的申请表。通常当我们双击按钮时,源 window 会显示该按钮的点击事件。但是,在最新的.NET 5.0版本中,有很多东西不能正常工作。

以下是我面临的多个问题,这些问题通常不存在,Microsoft 的博客或 MSDN 上也没有关于这些问题的解释:

  1. 当我将源代码添加到任何 button_click 事件时,构建和调试后没有任何反应!我试图让它工作,但没有任何努力。
  2. 重命名窗体上的控件后,项目需要完全重建以更改 Designer.vb 文件中控件的名称。在 .NET 5.0
  3. 之前,这在 VB 中是自动的
  4. Application.Designer.vb 随机决定将 Me.MainForm = Global.<ProjectNameHere>.<FormNameHere> 默认为 Me.MainForm = Global.<ProjectNameHere>.Form1,然后抛出找不到 Form1 的错误。到底为什么要做这个额外的工作? VB 用于自动设置。

代码:按钮点击事件

Public Class MainWindow
    Private Sub Btn_Exit_Click(sender As Object, e As EventArgs)
        Application.Exit()
    End Sub

    Private Sub Btn_MaxMin_Click(sender As Object, e As EventArgs)
        If WindowState = FormWindowState.Normal Then
            WindowState = FormWindowState.Maximized
        Else
            WindowState = FormWindowState.Normal
        End If
    End Sub

    Private Sub Btn_Minimize_Click(sender As Object, e As EventArgs)
        WindowState = FormWindowState.Minimized
    End Sub
End Class

我试过调试,但点击事件没有响应。我试图重建解决方案但它不起作用。我尝试在每行代码之后添加 Refresh() 并且不起作用。我重新检查了 designer.vb 和其他所有内容,但它不起作用。

.NET 5.0 在使用 Visual Basic WinForms 时出现问题。代码智能感知变得缓慢。一切都很慢,无法正常工作。

系统信息

产品版本:Microsoft Visual Studio Community 2019 16.8.0

DotNET Framework:5.0(2020 年 11 月 11 日发布)

操作系统:Windows10 20H2

请帮我解决这些问题。没有提供代码,因为我不知道其他开发人员将如何重现这些问题。我在 SO 或其他任何地方都找不到任何类似的问题。在 WinForms 和 VB.

中使用 .NET 4.8 或 5.0 以外的其他 .NET 版本时,我找不到任何问题

查看您的按钮单击事件处理程序代码,我发现没有 Handles Button1.Click

为了使代码 运行,它必须通过以下方式与事件相关联:

Private Sub Btn_Exit_Click(sender As Object, e As EventArgs) Handles btnExit.Click
    Application.Exit()
End Sub

另一种选择是:

Private Sub Form1_Load(sender as Object, e as EventArgs) Handles Me.Load
    AddHandler btnExit.Click, AddressOf Btn_Exit_Click        'run this somewhere when the form loads
End Sub

Private Sub Btn_Exit_Click(sender As Object, e As EventArgs)
    Application.Exit()
End Sub

如果这对您有帮助,那就太好了。如果没有,请提供更多代码,以便我们了解发生了什么。

此致