나는 일종의 간단한 문제가 있습니다. 테스트 이메일을 보내는 코드 섹션이 있는데,이 프로세스가 발생하기 직전에 표시 할 선택 윤곽 진행 막대를 표시하고 싶습니다. 이 일어나고있다.VB.net에서 수면 사용
그러나 테스트 이메일을 보내야 진행률 표시 줄이 나타납니다.
잠자기 기능을 사용해 보았지만 테스트 이메일이 전송 될 때까지 진행률 막대가 표시되지 않습니다.
이유를 아는 사람이 있습니까?
코드 : (참고 : GroupBoxTesting가 진행 표시 줄을 포함) 당신은 잠을로 이동합니다 (현재 실행중인 같이 스레드가 코드입니다) UI 스레드를 말 했어요
Private Sub BTMsendmailtest_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTMsendmailtest.Click
GroupBoxTesting.Visible = True
Threading.Thread.Sleep(500)
Try
Dim Mail As New MailMessage
Mail.Subject = "Test email for Email Alerts!"
Mail.To.Add(TXTemailaddy.Text)
Mail.From = New MailAddress(TXTsmtpusr.Text)
Mail.Body = "This is a test message from Email Alerts!" & Environment.NewLine & Environment.NewLine & "If you are reading this, then Email Alerts! is properly configured."
Dim SMTP As New SmtpClient(TXTsmtpsvr.Text)
If CHKEnableSSL.Checked = True Then
SMTP.EnableSsl = True
Else
SMTP.EnableSsl = False
End If
SMTP.Credentials = New System.Net.NetworkCredential(TXTsmtpusr.Text, TXTsmtppwd.Text)
SMTP.Port = TXTsmtpport.Text
SMTP.Send(Mail)
SendingPB.Value = False
MessageBox.Show("A test email has been sent to " & TXTemailaddy.Text & " from " & TXTsmtpusr.Text & "." & Environment.NewLine & Environment.NewLine & "If you did not recieve an email, please check your settings and try again.", "Test Email")
GroupBoxTesting.Visible = False
Catch ex1 As Exception
SendingPB.Value = False
GroupBoxTesting.Visible = False
MessageBox.Show(ex1.Message)
Return
End Try
End Sub
감사합니다. 제공하신 제안을 확인해 드리겠습니다. 수면이 시작되기 전에 UI가 업데이트되기를 바랬습니다. 고마워. – level42
배경 작업자가 트릭을 완료 한 것 같습니다. 감사합니다! – level42