Largeur des colonnes d'une datagrid en vb.net

cs_guyvdv Messages postés 101 Date d'inscription samedi 16 mars 2002 Statut Membre Dernière intervention 19 mai 2011 - 2 janv. 2005 à 17:04
cs_guyvdv Messages postés 101 Date d'inscription samedi 16 mars 2002 Statut Membre Dernière intervention 19 mai 2011 - 8 févr. 2005 à 12:30
Bonjour et bonne année,

Il y a qq qui peu me dire comment mettre la bonne largeur ( pour mes données dans un datagrid ( vb.net)
Soi en design mode soi en runtime.
Aussi je n'arrive pas a mettre une certain largeur a ma form1, car form1.width n'existe plus en .net

merci de me repondre, j'ai cherche partout ???
A+
Guy van der Velden
A voir également:

9 réponses

cs_labout Messages postés 1356 Date d'inscription samedi 8 décembre 2001 Statut Membre Dernière intervention 23 octobre 2006 8
2 janv. 2005 à 18:59
labout

Comment cela me.width existe ??
pour les largeurs de colonne il faut un DataGridTableStyle

exemple
Dim dSet As DataSet
Dim objImmoCM As CurrencyManager 'Gère une liste d'objets ici champs de la table Immo

dSet = New DataSet

If TextBox1.Text = "" Then
strSql = "SELECT * from immo order by noinv "
Else
strSql = "SELECT * from immo where natinv like '" & TextBox1.Text & "%' order by noinv"
End If

' interception d'une éventuelle erreur
Try
' ajoute la requete à l'oleadapter
With New OleDbDataAdapter(selectCommand:=New OleDbCommand(cmdText:=strSql, _
Connection:=oConnect))
' remplit le dataset
.Fill(DataSet:=dSet, srcTable:="immo")
' libère OleAAdapter de la memoire
.Dispose()
End With

With dSet.Tables
objImmoCM = CType(Me.BindingContext(.Item(Name:="immo")), CurrencyManager)
End With

GridTableStyle = New DataGridTableStyle

With GridTableStyle
.BackColor = System.Drawing.Color.White
.ForeColor = System.Drawing.Color.DarkSlateBlue
.GridLineColor = System.Drawing.Color.MediumSlateBlue
.HeaderBackColor = System.Drawing.Color.Lavender
.HeaderForeColor = System.Drawing.Color.MediumSlateBlue
.AlternatingBackColor = Color.LightGray
.RowHeaderWidth = 10
.MappingName = "immo"
With .GridColumnStyles

.Add(column:=New DataGridTextBoxColumn(objImmoCM. _
GetItemProperties.Item(Name:="Noinv")))
With .Item(index:=0)
.MappingName = "Noinv"
.HeaderText = "N° Inv "
.Alignment = HorizontalAlignment.Right

.Width = IntAvgNumWidth * 10 ' 10 la taille du champ
.ReadOnly = True
End With
....

end with
' alimentation de la grille avec DataSource
DataGrid1.DataSource = dSet
' nécessaire pour ne pas avoir d'arborescence dans la visu de la grille puique l'on a qu'une table
' Obtient ou définit la liste spécifique dans DataSource pour laquelle
' le contrôle System.Windows.Forms.DataGrid affiche une grille.

DataGrid1.DataMember = "Immo"
' ajout de la table de style
DataGrid1.TableStyles.Add(table:=GridTableStyle)

@+
0
cs_guyvdv Messages postés 101 Date d'inscription samedi 16 mars 2002 Statut Membre Dernière intervention 19 mai 2011 1
3 janv. 2005 à 09:42
merci de repondre si vit, mais l'example depasse un peut mais pouvoir
peut tu ecrire un example plus simple.
Par contre si form1.width n'existe pas me.width fonctionne tres bien
A+

Guy van der Velden
0
cs_labout Messages postés 1356 Date d'inscription samedi 8 décembre 2001 Statut Membre Dernière intervention 23 octobre 2006 8
3 janv. 2005 à 18:56
VB.NET n'est pas particulièrement simple et je vais essayer,
je n'aurai le temps que vendredi de te préparer un exemple plus simple.
Superbe le nouvel écran de réponse

labout
0
cs_guyvdv Messages postés 101 Date d'inscription samedi 16 mars 2002 Statut Membre Dernière intervention 19 mai 2011 1
3 janv. 2005 à 22:14
Merci et a vendredi,
j'ai une petite notion de styles, mais ce que j'essay but presque chaque foix a une erreur qu l'index doit etre plus petit que le nombres de element dans la collection, et la ..??..?.?
a+
Guy van der Velden
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_guyvdv Messages postés 101 Date d'inscription samedi 16 mars 2002 Statut Membre Dernière intervention 19 mai 2011 1
3 janv. 2005 à 22:18
j'oublie de dire que j'ai un datagrid qui est remplis avec une colonne date(datum) , une colonne string ("description")et une colonne prix ("bedrag")
elle est populé avec des données que je lis dans un textfile csv , tout cela fonctionne tres bien

Guy van der Velden
0
cs_guyvdv Messages postés 101 Date d'inscription samedi 16 mars 2002 Statut Membre Dernière intervention 19 mai 2011 1
3 janv. 2005 à 22:32
voici un extrait du code ou ca deborde:
try
DGTSRekeningen.GridColumnStyles(0).Width = 10 'id
DGTSRekeningen.GridColumnStyles(1).Width = 20 'nom
DGTSRekeningen.GridColumnStyles(2).Width = 40 'prenom
DGTSRekeningen.GridColumnStyles(3).Width = 80 'tel
DGTSRekeningen.GridColumnStyles(4).Width = 160 'email
DGTSRekeningen.DataGrid.Refresh()
Catch ex As Exception
textbox1.text = ex.ToString
endtry

ex=
System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size
of the collection.
Parameter name: index
at System.Collections.ArrayList.get_Item(Int32 index)
at System.Windows.Forms.GridColumnStylesCollection.get_Item(Int32 index)
at Girorekeningen.Form1.formatdg1() in c:\Talen\VB.net\GiroRekeningen\Form1.vb:line 364

ne te fai pas de soussis, si tu n'a pas le temps,
je trouverai bien un jour hihihi

@1
Guy van der Velden
0
cs_catherinet Messages postés 2 Date d'inscription vendredi 30 janvier 2004 Statut Membre Dernière intervention 7 février 2005
7 févr. 2005 à 18:47
Bonjour ,

Est-ce que l'on peut utiliser le "DatagridTableStyle" dans une WebForm ?

Je veux ajouter une ligne de saisie de filtre dans une datagrid dans une WebForm.
Mais il me taille toutes les colonnes à la taille de la plus grande colonne.
Je voudrais donc pouvoir changer la largeur de mes colonnes quand j'ajoute cette ligne de filtre.
Merci d'avance si vous avez la solution.

Catherine
0
cs_guyvdv Messages postés 101 Date d'inscription samedi 16 mars 2002 Statut Membre Dernière intervention 19 mai 2011 1
8 févr. 2005 à 09:33
Je n'ai jamais travailé avec un WebForm alors je ne peut pas repondre a la question

Sorry

Par contre j'ai trouvé la resolution de mon probleme . Je vai en faire un petit tutorial un de ces jours

Saluts

Guy van der Velden
0
cs_guyvdv Messages postés 101 Date d'inscription samedi 16 mars 2002 Statut Membre Dernière intervention 19 mai 2011 1
8 févr. 2005 à 12:30
Je vient d'ajouter une source "[ajoutcode.aspx?ID=29366 LARGEUR CHAMPS DATAGRID TYPE D E DONNÉES VB.NET"]

Mais je pense qu'elle ne sera visible pas tou de suite, car moi je ne la retrouve pas maintenant, mais elle a ete accepté



Saluts

Guy van der Velden
0
Rejoignez-nous