Ordre d'affichage dans datagrid /dataset ???

Messages postés
1183
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
- - Dernière réponse : cs_coq
Messages postés
6352
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
- 24 oct. 2005 à 12:12
Salut a tous,

Voila j'utilise des datasets typés, j'ai donc un certain nombre de datatable contenue dans mon dataset,
chaque datatable etant l'image d'une table de ma base de données...

j'utilise des tablestyles pour rendre mes listes de datagrid a peu pres jolie...(dans la mesure du possible..en tout cas lisible par le commun des mortels...) :

<HR>

dg_Liste_T_ARTICLE.TableStyles["T_ARTICLE"].GridColumnStyles["ARTDMAJ"].HeaderText = "Maj";


dg_Liste_T_ARTICLE.TableStyles["T_ARTICLE"].GridColumnStyles["ARTDMAJ"].Width = 75;


dg_Liste_T_ARTICLE.TableStyles["T_ARTICLE"].GridColumnStyles["ARTDMAJ"].NullText = "";


dg_Liste_T_ARTICLE.TableStyles["T_ARTICLE"].GridColumnStyles["ARTDMAJ"].Alignment = System.Windows.Forms.HorizontalAlignment.Center;


<HR>

Tout ca marche très bien, mon souci est que je rajoute des colonnes en dynamique dans mon dataset par programme :


<HR>

ds.T_ARTICLE.Columns.Add("Type_Article",
typeof(
string), "IIF(ARTTYP='', '', IIF(ARTTYP='A', 'Assemblé', IIF(ARTTYP='C', 'Composé', 'Inconnu' ) ) )");


<HR>


cette colonne arrive a la fin de mon datagrid...

Comment faire pour positionner une colonne a un endroit bien precis dans un datagrid.. ?????

j'ai remarquer que pour le dataset typé le plus simple (mais le plus lourd) c'est de modifier directement le XSD en changeant le positionnement dans le Xsd...
mais la méthode ne me plait pas du tout...

1. Parce qu'en cas de MAJ du XSD il faut se rappeler l'ordre des colonnes
2. Dans le cas de colonnes rajouter par prog pas moyen d'intervenir sur l'ordre (Enfin je connais pas et j'attend votre aide pour ca)

Merci d'avance pour toute suggestion :)


<HR>
Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
Afficher la suite 

19 réponses

Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
41
0
Merci
Je crois qu'il faut que tu recrées un TableStyle, en y ajoutant tes
colonnes dans l'ordre que tu souhaites. (GridColumnStyle.Add)

Et ensuite, tu reassignes le TableStyle de ton DataGrid avec ton nouveau TableStyle.



En esperant que je me plante pas complétement, j'ai du faire ca qu'une
seule fois, et y'a un bout de temps, suis plus sur de la manip

Mx
Commenter la réponse de MorpionMx
Messages postés
1183
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
12
0
Merci
harrrggghhhh

c'est un peu ce que je craignais...

j'utilise le tablestyle par défaut qui ce calque sur le dataset typé...
mais avec cette méthode oui ca va marcher, mais qd j'ai une table de 50 colonnes ??? :(

en fait dans mon datagrid je ne fais qu'afficher un certain nombre d'info, j'ai ensuite une zone de saisie ou l'on voit Toutes les zones...

du coup je masque la plupart des zones dans le datagrid et je n'en affiche qu'une petite 10zaine Maximum...
alors c'est un peu lourd de devoir fairte les tablesstyle a la main...

surtout en terme de productivité




<HR>
Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
Commenter la réponse de Arthenius
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
41
0
Merci
C'est clair que c'est pas top :/ C'est pas génial a manipuler un DataGrid je trouve.

Pour ca, vive le DataGridView

Mx
Commenter la réponse de MorpionMx
Messages postés
1183
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
12
0
Merci
mais bon s'il le faut




<HR>
Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
Commenter la réponse de Arthenius
Messages postés
1183
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
12
0
Merci
quel est la difference ??

c'est du .net 1.1 ??




<HR>
Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
Commenter la réponse de Arthenius
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
41
0
Merci
Non, du 2.0 :/



La différence dans ton cas, plus de TableStyle, du travaille directement sur les propriétés du DataGridView

Par exemple, pour changer la place de ta colonne, juste a faire

dataGridView.Columns["tacolonne"].DisplayIndex = 2;


Mx
Commenter la réponse de MorpionMx
Messages postés
1183
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
12
0
Merci
vivement le 2.0



<HR>
Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
Commenter la réponse de Arthenius
Messages postés
171
Date d'inscription
dimanche 6 février 2005
Statut
Membre
Dernière intervention
13 avril 2007
0
Merci
J'en profite pour poser une question... Avec le .NET 2.0 avec le
DataGridView on pourra faire des menus déroulants plus facilement
dans les datagrid ? Car c'est super lourd avec le .NET 1 !!!!!!
Commenter la réponse de georgeduke
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
41
0
Merci
Il y a des DataGridViewComboBoxColumn (c'est un peu barbare comme nom, mais au moins c'est facile a implementer)

Mx
Commenter la réponse de MorpionMx
Messages postés
171
Date d'inscription
dimanche 6 février 2005
Statut
Membre
Dernière intervention
13 avril 2007
0
Merci
Génial !!! Quand je pense à la tonne de code qu'il fallait pour gérer
ça avant ! Ah mince par contre je développe avec #developp, je ne sais
pas si je peux passer au .NET 2 avec ! :-/
Commenter la réponse de georgeduke
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
41
0
Merci
Je pense que y'aura surement une version 2.0 qui sortira, mais pas tout de suite

Au pire, peut-etre que delphi sortira rapidement une version personal de son equivalent de Visual Studio.

Et au pire pire pire, tu aura la version express qui coutera aussi cher qu'un bon jeu.

Mx
Commenter la réponse de MorpionMx
Messages postés
171
Date d'inscription
dimanche 6 février 2005
Statut
Membre
Dernière intervention
13 avril 2007
0
Merci
Oui je pense de plus en plus qu'acquérir la version express de visual me semble nécessaire.



Euh, je suis désolé de faire dévier un peu le sujet original mais j'ai
commencé à développer une appli de base de données assez conséquente en
.net 1, le passage au .NET 2 demandera des modifs ? (j'utilise bcp de
datagrid, dataset ainsi que le connecteur officiel MySql Connector
1.0.6)
Commenter la réponse de georgeduke
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
41
0
Merci
Ton code pourras rester exactement le meme, le .Net 2 est compatible
.Net 1 (le Datagrid existe toujours par exemple, mais s'il est
deprécié).

Apres, si tu veux remplacer ton Datagrid par un DataGridView, la il
faudra recoder le tout, les propriétés de ces 2 classes etant
différentes.

Pour ce qui est des DataSet, etc, le fonctionnement restera le meme

Mx
Commenter la réponse de MorpionMx
Messages postés
171
Date d'inscription
dimanche 6 février 2005
Statut
Membre
Dernière intervention
13 avril 2007
0
Merci
Ahhhh merci ça me rassure, pour une fois la compatibilité est assurée.

Ca me permettra de recoder tranquilement en Datagridview parce que je
pense que j'y gagnerai en lisibilité de code (et donc maintenabilité)
Commenter la réponse de georgeduke
Messages postés
6352
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
75
0
Merci
De toutes façon tu n'es pas obligé de migrer ton appli, elle peut très bien tourner sur le 1.1 alors que les nouvelles applis tourneront sur le 2.0.
Il faudras juste que les 2 framework soient installés.

/*
coq
MVP Visual C#
*/
Commenter la réponse de cs_coq
Messages postés
1183
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
12
0
Merci
ben nous reste plus qu'a attendre le 2.0 ....
mais j'avoue que le passage a la 2.0 m'inquiete aussi etant donner qu'on nous aussi developper uen appli de bdd consequente...le jour ou on migre par aquis de conscience faudra tout retester

[Clin D'oeuil]
au fait dans la prochaine mouture y aura plus CR dans visual studio...
adieu grosse berta

efin pas pour moi on a acheter Cr XI
D'oeuil




<HR>
Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
Commenter la réponse de Arthenius
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
41
0
Merci
Jamais touché a CR.

C'est si terrible que ca ?

Mx
Commenter la réponse de MorpionMx
Messages postés
1183
Date d'inscription
mercredi 21 janvier 2004
Statut
Membre
Dernière intervention
6 septembre 2011
12
0
Merci
non ca va...c assez puissant quand on sait l'utiliser...

par contre pour le deploiement c'est autre chose...




<HR>
Arthenius
http://blogs.developpeur.org/Arthenius/

"Ce qui ne me tue pas, me rend plus fort..."
Commenter la réponse de Arthenius
Messages postés
6352
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
75
0
Merci
Je partage ta douleur :p

/*
coq
MVP Visual C#
*/
Commenter la réponse de cs_coq