Работа с исключениями в асинхронном потоке BackgroundWorker_DoWork() - C#
Формулировка задачи:
Добрый день!
Работаю с компонентом BackgroundWorker. В обработчике DoWork вызываю метод, который может выбросить исключение. Как можно передать это исключение в основной поток? Сейчас делаю следующим образом:
private void backgroundWorker_DoWork(object sender, DoWorkEventArgs e) { try { method(obj); e.Result=null; } catch (Exception exc) { e.Result=exc; } } private void backgroundWorker_RunWorkerCompleted(object sender, DoWorkEventArgs e) { if (e.Result==null) return; MessageBox.Show("Error"); }
Решение задачи: «Работа с исключениями в асинхронном потоке BackgroundWorker_DoWork()»
textual
Листинг программы
private void backgroundWorker_DoWork(object sender, DoWorkEventArgs e) { method(obj); } private void backgroundWorker_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { if (e.Error==null) return; MessageBox.Show("Error"); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д