Tableau de tableaux [Résolu]

Signaler
Messages postés
223
Date d'inscription
mercredi 31 mai 2006
Statut
Membre
Dernière intervention
5 mai 2014
-
Messages postés
223
Date d'inscription
mercredi 31 mai 2006
Statut
Membre
Dernière intervention
5 mai 2014
-
Salut !

J'aurais besoin d'un coup de main.
J'ai créé 2 void :

L'une parcours un dossier pour énumérer les sous dossiers. Elle remplit une datagridviewbox avec leur nom.

L'autre parcours un dossier contenant des mp3 pour énumérer leur genres et albums.

Ce que je souhaiterais c'est que lorsque l'on clique sur une case de la datagrid (donc sur un nom de sous dossier), cela affiche dans une autre datagrid(2 colonnes) la liste des genres et albums SANS RAMER).

Je pense donc créer une structure qui enregistre pour chaque répertoire le tableau contenant les tags lui correspondant (Pour info, je récupère les tags mp3 dans une très grosse bibliothèque, par le réseau (100 MGbit), donc ca rame). Il faut Donc que je récupère ces tags une fois au début, et que je les stocke dans une structure afin de les afficher immédiatement.

Est ce que vous pouvez m'aider à créer un tableau de tableaux ou m'indiquer une autre solution ?
Merci d'avance ...

MMN

9 réponses

Messages postés
28
Date d'inscription
mardi 7 mars 2006
Statut
Membre
Dernière intervention
22 janvier 2007

Tu peux utiliser les tableaux en escalier qui se définisse comme ceci :
object[][] myTableau = null;
myTableau = new object[50][];
for (int i=0; i<50 ; i++)
   myTableau[i] = new object[200];
l'avantage, c'est que chaque tableau inclus dans ton tableau principal peut avoir une taille differente,
Sinon tu peux toujours utiliser les collections, c'est fait pour ça !!

J'espere que ca va t'aider
Messages postés
223
Date d'inscription
mercredi 31 mai 2006
Statut
Membre
Dernière intervention
5 mai 2014

Ya t'il une différence entre un

object[] Tableau

et un

 Arraylist Tableau = new Arraylist()

Jusqu'à maintenant je manipulais les arraylist, est ce qu'on peut faire des arraylist d'arraylists ?

MMN
Messages postés
28
Date d'inscription
mardi 7 mars 2006
Statut
Membre
Dernière intervention
22 janvier 2007

Oui il y a une grosse difference,


une arrayList peut etre redimenssionnné en cours d'utilsiation, alors qu'un object[] ne peut pas etre redimenssionné.


Il est tout a fait possible de faire une arrayList d'arrayList, cela ne pose aucun probleme,


Par contre si tu est en .Net 1.1 tu n'as pas la possibiltié d'utiliser les generics (ce qui est possible en .Net 2.0)


Cela signifie que myArrayList[i] renvoie toujour un object et que tu dois le transtyper ensuite.

tservolle
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
47
Salut,

tservolles, en .Net 2, les object[] peuvent maintenant etre redimensionnés
Ceci grace a la méthode Array.Resize

Mx
MVP C# 
Messages postés
223
Date d'inscription
mercredi 31 mai 2006
Statut
Membre
Dernière intervention
5 mai 2014

En fait j'arrive toujours pas a créer un tableau contenant des tableaux de 2 colonnes.
Un tableau contenant des tableaux d'une seule colonne, j'y arrive, mais pas 2 colonnes.
En fait, pour chacun de mes répertoires, je veux pouvoir stocker en mémoire la liste des genres et la liste des albums : donc dans mon 1 er tableau je veux stocker des tableaux de 2 colonnes.

MMN
Messages postés
223
Date d'inscription
mercredi 31 mai 2006
Statut
Membre
Dernière intervention
5 mai 2014

Ne peux t'on pas déclarer des structures en csharp comme on le ferait en C ?

MMN
Messages postés
28
Date d'inscription
mardi 7 mars 2006
Statut
Membre
Dernière intervention
22 janvier 2007

Dans ce cas il vaut mieux creer une structure intermediaire qui contient tes 2 tableaux, et ensuite tu crée un tableau avec cette structure dans chaque case

tservolle
Messages postés
28
Date d'inscription
mardi 7 mars 2006
Statut
Membre
Dernière intervention
22 janvier 2007

le mot clé réservé aux structure est struct

tservolle
Messages postés
223
Date d'inscription
mercredi 31 mai 2006
Statut
Membre
Dernière intervention
5 mai 2014

OK merci à vous !

MMN