chambreur
Messages postés30Date d'inscriptionmardi 19 août 2008StatutMembreDernière intervention15 mai 2014
-
14 janv. 2014 à 10:16
chambreur
Messages postés30Date d'inscriptionmardi 19 août 2008StatutMembreDernière intervention15 mai 2014
-
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.
PapyNormand
Messages postés27Date d'inscriptionsamedi 7 août 2010StatutMembreDernière intervention16 janvier 20141 15 janv. 2014 à 19:17
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
Messages postés30Date d'inscriptionmardi 19 août 2008StatutMembreDernière intervention15 mai 2014 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