Wie löse ich ein Ereignis in VB.NET-Code aus?
Ich habe ein Formular mit einer Startschaltfläche (damit Benutzer die Prozesse auf Wunsch immer wieder ausführen können), und ich möchte eine sendenbtnStart.Click
Ereignis, wenn das Formular geladen wird, so dass die Prozesse automatisch gestartet werden.
Ich habe folgende Funktion für diebtnStart.Click
Aber wie kann ich Visual Basic mitteilen, dass jemand auf die Schaltfläche geklickt hat und dieses Ereignis ausgelöst hat?
Ich habe versucht, sehr einfach zu gehen, was im Wesentlichen funktioniert. Visual Studio gibt mir jedoch eine WarnungVariable 'sender' is used before it has been assigned a value
Ich schätze, das ist nicht der richtige Weg:
Dim sender As Object
btnStart_Click(sender, New EventArgs())
Ich habe es auch mit versuchtRaiseEvent btnStart.Click
, aber das gibt den folgenden Fehler:
'btnStart' ist kein Ereignis von 'MyProject.MyFormClass'
CodeImports System.ComponentModel
Partial Public Class frmProgress
Private bw As BackgroundWorker = New BackgroundWorker
Public Sub New()
InitializeComponent()
' Set up the BackgroundWorker
bw.WorkerReportsProgress = True
bw.WorkerSupportsCancellation = True
AddHandler bw.DoWork, AddressOf bw_DoWork
AddHandler bw.ProgressChanged, AddressOf bw_ProgressChanged
AddHandler bw.RunWorkerCompleted, AddressOf bw_RunWorkerCompleted
' Fire the 'btnStart.click' event when the form loads
Dim sender As Object
btnStart_Click(sender, New EventArgs())
End Sub
Private Sub btnStart_Click(sender As Object, e As EventArgs) Handles btnStart.Click
If Not bw.IsBusy = True Then
' Enable the 'More >>' button on the form, as there will now be details for users to view
Me.btnMore.Enabled = True
' Update the form control settings so that they correctly formatted when the processing starts
set_form_on_start()
bw.RunWorkerAsync()
End If
End Sub
' Other functions exist here
End Class