Je développe actuellement une application pour un appareil de mesure d'angle (goniomètre). Un composant DataGridView
est utilisé pour configurer les valeurs nominales (et les tolérances) pour les angles mesurés. L'utilisateur doit pouvoir saisir les angles de différentes manières, par exemple 2 ° (pour les degrés) ou 120 '(pour les minutes d'arc) ou 7200 "(pour les arcsecondes) Pour cela j'ai créé un analyseur qui va convertir une chaîne valide à la valeur angulaire (un double, en degré) ou l'échec si la chaîne n'est pas valide..NET DataGridView: façon correcte de gérer les erreurs d'analyse lors de la gestion de l'événement CellParsing?
si je comprends bien le point de temps correct d'invoquer l'analyseur est lors de la manipulation de l'événement CellParsing
. Mais comment puis-je correctement gérer le cas lors de l'analyse a échoué?
Selon exemple de code MSDN je reçois l'idée que je devrais quitter la propriété ParsingApplied
du DataGridViewCellParsingEventArgs
(qui est passé au gestionnaire CellParsing
) mis à false
. Si je le fais (et laisse la propriété Value
inchangée) un FormatException
est lancé par des tentatives de conversion qui sont ensuite effectuées par l'infrastructure qui déclenche l'événement DataError
. Au lieu d'un FormatException
qui contient un message d'erreur plutôt non spécifique, j'aimerais avoir une exception qui contient des informations sur l'erreur spécifique qui a causé l'échec de mon implémentation de l'analyseur afin que je puisse afficher un message d'erreur spécifique dans l'événement DataError
. J'ai supposé que je peux lancer un FormatException
moi-même du gestionnaire CellParsing
mais cette exception n'est pas attrapée par le cadre et n'aboutit donc pas à déclencher l'événement DataError
(en fait le gestionnaire d'exception extrême termine l'application).
Eh bien, merci! Je suppose que je devrais essayer ça ... –
J'espère que ça va bien pour vous. Si vous avez des problèmes, n'hésitez pas à commenter et j'essaierai de vous aider. Bonne chance! – Codesleuth