C# Adaptation taille listview en fonction du nombre d'éléments [Résolu]

chambreur 30 Messages postés mardi 19 août 2008Date d'inscription 15 mai 2014 Dernière intervention - 14 janv. 2014 à 10:16 - Dernière réponse : chambreur 30 Messages postés mardi 19 août 2008Date d'inscription 15 mai 2014 Dernière intervention
- 16 janv. 2014 à 09:22
Bonjour,
Je souhaite pouvoir redimensionner ma listview en fonction du nombre d'éléments de mes tableaux, c'est à dire:
J'ai un premier tableau qui représente le temps en seconde pour la synchro
t= 0 1 5 10 ...
et un deuxième tableau qui représente une coordonnée
x= 12 10 14 74...
j'arrive bien à afficher ce que je veux dans ma listview en faisant:
            listView1.View = View.Details;
            listView1.Columns.Add("time");
            listView1.Items.Add("x");

            for (int i = 0; i < 6; i++)
            {
                listView1.Columns.Add(x[i]);
                listView1.Items[0].SubItems.Add(t[i]);              
            }


L'ennuie c'est que je souhaite redimensionner la listview(pas les colonnes) mais la listview entière en fonction de la taille de mon tableau.

Je fais donc
          int LengthTemps = t.Length;
            listView1.Size = (LengthTemps * 30, 82);
            listView1.Size(83,42);


Mais apparement ni listView1.Size = (LengthTemps * 30, 82) ni listView1.Size(83,42) fonctionne, les 2 instructions sont rejetées.

Help please :)
Afficher la suite 

5 réponses

Répondre au sujet
Whismeril 11437 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 26 avril 2018 Dernière intervention - 14 janv. 2014 à 11:33
+1
Utile
Bonjour

as tu essayé avec Width et Height?
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Whismeril
chambreur 30 Messages postés mardi 19 août 2008Date d'inscription 15 mai 2014 Dernière intervention - 14 janv. 2014 à 14:15
0
Utile
1
pff, je suis vraiment un débutant, je me suis vraiment embêté pour rien, c'était tout simplement Width et Height au lieu de size.

Merci beaucoup pour ta réponse Whismeril
Whismeril 11437 Messages postés mardi 11 mars 2003Date d'inscriptionContributeurStatut 26 avril 2018 Dernière intervention - 14 janv. 2014 à 15:58
De rien, j'ai débuté aussi un jour et des questions c... je m'en suis posé aussi ;-)
Commenter la réponse de chambreur
PapyNormand 27 Messages postés samedi 7 août 2010Date d'inscription 16 janvier 2014 Dernière intervention - 15 janv. 2014 à 19:17
0
Utile
1
Bonjour,
J'ai regardé la doc MSDN ( je donne le lien américain car je crois que le lien français ne correspondrait qu'à une traduction automatique et non à une traduction humaine )
http://msdn.microsoft.com/en-us/library/system.windows.forms.control.size(v=vs.100).aspx
Il est écrit qu'il faut fournir à la propriété Size un object Size. Pourriez-vous essayer de remplacer
listView1.Size = (LengthTemps * 30, 82);
par
listView1.Size = new Size(LengthTemps * 30, 82);
Voir "So, adjusting the Width or Height properties of the Size returned from this property will not affect the Width or Height of the control." ( problem classique avec des proprieties définies comme des types valeur ( ce qui est le cas d'une structure ).
Autre solution ( correspondant à la phrase suivante de celle que j'ai fourni en américain ):
listView1.Size.Width = LengthTemps * 30
listView1.Size.Height = 82;
Je n'ai pas eu le temps de tester ces 2 solutions , mais je sais que j'ai utilisé la 1ère lorsque j'ai utilisé VS 2005 massivement lors de mon apprentissage de SMO.
Par contre , la documentation n'a pas change entre les versions 2.0 et 4.5.1 ( que j'utilise actuellement )
Bonne journée
chambreur 30 Messages postés mardi 19 août 2008Date d'inscription 15 mai 2014 Dernière intervention - 16 janv. 2014 à 09:22
Bonjour PapyNormand et merci pour ton aide.

J'ai marqué le sujet comme résolu suite à la réponse de Whismeril qui est la bonne.
Il faut tout simplement marquer Width ou Height selon ce qu'on souhaite et pas directement size(Width,Height).
Dans mon cas, la solution est donc:.
listView1.Width = (LengthTemps * 70); // LengthTemps est une variable

Bonne journée à toi aussi
Commenter la réponse de PapyNormand

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.