[VB.net] Erreur Exception dans Datagrid. Aidez-moi !!

CedTheBreton Messages postés 3 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 7 mars 2005 - 4 mars 2005 à 09:32
CedTheBreton Messages postés 3 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 7 mars 2005 - 7 mars 2005 à 09:01
Bonjour à tous,

J'ai un grave problème avec le DataGrid et ça fait 2jrs que je suis à chercher une solution sans résultat..

Le dataGrid est utilisé en mode ReadOnly, je lui affecte un DataSet et sélectionne une cellule. Cette cellule est enregistrée en mémoire dans CurrentCell. Ensuite j'affecte un autre DataSet au DataGrid et tente de sélectionner une autre ligne. Si le 2ème DataSet possède moins de ligne que celle enregistrée dans le CurrentCell. Il me fait une erreur de IndexOutOfRangeException et me dit que l'indes est en dehors des limites du tableau.

J'ai voulu faire du forcing et affecter au CurrentCell la valeur 0 mais cela ne convient pas à mon chef de projet, car cette solution n'est pas adaptée pour les DataSet vides.

Il m'a demandé de trouver une solution évènementielle mais le problème c'est que cette erreur se produit en dehors de toute fonction et avant tous les évènements comme CurrentCellChanged ou MouseUp, MouseDown..

Je suis vraiment désespéré. Pouvez-vous m'aider SVP??

Merci d'avance

4 réponses

cs_Stephane33 Messages postés 630 Date d'inscription samedi 15 février 2003 Statut Modérateur Dernière intervention 9 octobre 2011 1
4 mars 2005 à 09:44
peut-être de sauvegarder currentcell (en le clonant ou en définissant une classe)

et de réinitialiser la grille... (a tout hasard, je n'ai pas encore utilisé beaucoup de DataGrid sous .Net)
0
CedTheBreton Messages postés 3 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 7 mars 2005
4 mars 2005 à 10:23
Ben en fait je ne souhaite pas de sauvegarder le CurrentCell mais faire une sorte de réinitialisation du DataGrid et "mettre à 0" le CurrentCell comme si c'était la 1ère affectation du DataGrid
Mais le pb c'est que je ne sais pas comment faire une réinitialisation de la grille car ce n'est pas un objet.
J'utilise un SetDataBinding pour lui affecter un nouveau DataSet.
0
cs_chris81 Messages postés 589 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 29 avril 2008 2
4 mars 2005 à 19:00
slt,

si tu utilise SetDataBinding tu es asp.net. Dans ta fonction pourquoi ne pas passer le datagrid et tu declare a chaque fois un new datagrid?

http://www.correzeweb.com
http://www.localetv.com
0
CedTheBreton Messages postés 3 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 7 mars 2005
7 mars 2005 à 09:01
Ben ce ce que j'ai fait et ça ne correspond pas à ce qu'il veut (mon chef de projet)...
J'ai mis le DataMember à vide à chaque fois avant d'affecter un nouveau DataSet au DataGrid.

Il dit que ce n'est pas adapté car on déclare un dataGrid à chaque fois alors que cette erreur ne se produit que de temps en temps..
0
Rejoignez-nous