[VB.NET] Gestion d'une exception

Signaler
Messages postés
8
Date d'inscription
lundi 1 août 2005
Statut
Membre
Dernière intervention
9 août 2006
-
Messages postés
8
Date d'inscription
lundi 1 août 2005
Statut
Membre
Dernière intervention
9 août 2006
-
Bonjour! J'ai une question à propos de la gestion d'exceptions en VB.NET.

Mise en contexte:

L'utilisateur ouvre une feuille sur laquelle il y a un contrôle DataGrid ainsi qu'un bouton "Retour". Le contrôle DataGrid a un ColumnHeader un un RowHeader. La table liée au DataGrid a une relation un à plusieurs avec une autre table dont elle est le parent. Les règles d'intégrité référentielle sont .none afin d'empêcher la suppression d'une ligne parente sans avoir préalablement supprimé les lignes enfant.

Mise en situation:

L'utilisateur clique sur une RowHeader du contrôle DataGrid, sélectionnant une ligne. Il appuie sur la touche Delete (Supprime) du clavier. Une ViolatedConstraint Exception est lancée.

Question:

Comment intercepter cette exception pour ensuite envoyer un Message Box à l'utilisateur afin de le prévenir que son action est impossible et ensuite annuler son action de supression.

Afin de compliquer la tâche:

- C'est en fait un DataView de la table qui est lié au contrôle DataGrid.

- Le DataView voit sa propriété AllowDelete à true.

- Il ne faut pas empêcher l'utilisateur d'appuyer sur la touche Delete (Supprime) puisqu'il peut en avoir besoin pendant qu'il édite un des champs du contrôle DataGrid.

Bref, ici, je cherche vraiment un moyen d'intercepter l'exception.

Merci!

2 réponses

Messages postés
379
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
20 avril 2011
1
Hello ! Pourquoi ne pas essayer avec un banal Try / catch sur le keypress ?

Try
ton code...

catch (tu peux meme rajouter ex as exception pour recuperer le numero de l'exception, et le gerer)
msgbox ("pas bien !")
finally
ton code... (pas obligé...)
end try

Seb.
0
Messages postés
8
Date d'inscription
lundi 1 août 2005
Statut
Membre
Dernière intervention
9 août 2006

Bonne idée scortex84, mais comment faire pour déterminer si l'utilisateur a bien sélectionné une ligne et qu'il n'est pas simplement entrain de modifier la valeur d'un des champs?
0