が付いたWPFウィンドウがあり BackgroundWorker
ます。Send()
ここのメソッドで例外が発生します:
private void worker_DoWork(object sender, DoWorkEventArgs e)
{
smtpClient.Send(mail);
}
Click
これは、次のようなボタンのイベントで呼び出されます。
private async void SendClickAsync(object sender, RoutedEventArgs e)
{
using (MessageServiceClient client = new MessageServiceClient())
{
try
{
[...]
worker.RunWorkerAsync();
}
catch (Exception ex)
{
MessageBox.Show("Error! Check your sender data!", "!", MessageBoxButton.OK, MessageBoxImage.Error);
[...]
}
}
}
この例外が処理されないのはなぜですか?私が非同期ではなく(すべてがSendClickAsync()
メソッド内にあった)それを行っていたとき、メッセージボックスはうまくポップアップしました。