gestion des exceptions dans backgroundworker
Salut,
je fais appel à un backgroundworker pour traiter mes calculs. J'effectue des traitements des exceptions qui peuvent survenir. Dans dowork, j'ai ce traitement
Code:
1 2 3 4 5 6 7 8 9 10 11
| try
{
cManage.runPLSModelSelectionFixedNbr(mdiP.dPLS.trainingData, int.Parse(txtNbrComponent.Text));
}
catch (Exception ex)
{
e.Cancel = true;
e.Result = ex;
return;
} |
Ensuite dans backgrounworkercompleted j'ai
Code:
1 2 3 4 5 6 7
| if(e.Cancelled)
{
//traitement des exceptions
Exception ex = (Exception)e.Result;
MessageBox.Show(ex.Source + "\r\n" + ex.Message, "function Matlab error", MessageBoxButtons.OK,
MessageBoxIcon.Error);
} |
Lors d'une exception, j'affiche le message d'erreur mais ensuite elle ferme la page où j'exécute backgroundworker. Comment peut on effectuer une prise en charge efficace des exceptions et des erreurs? comment faire après le message d'erreur que ma page ne ferme pas et que l'utilisateur puisse réeffectuer le calcul?
merci pour votre aide