Работа с исключениями в асинхронном потоке 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");
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д