[VbNet]datagrid

Résolu
cs_stargates Messages postés 40 Date d'inscription samedi 24 juillet 2004 Statut Membre Dernière intervention 10 janvier 2008 - 1 nov. 2004 à 17:50
glplpmat Messages postés 70 Date d'inscription mercredi 11 juin 2003 Statut Membre Dernière intervention 2 octobre 2006 - 2 nov. 2004 à 13:39
Comment changer la largeur des colonnes un par une?
j'ai bien trouvé la propriété PreferredColummWidth mais elle
change la largeur de toutes les colonnes.

Merci pour votre aide

4 réponses

glplpmat Messages postés 70 Date d'inscription mercredi 11 juin 2003 Statut Membre Dernière intervention 2 octobre 2006 1
2 nov. 2004 à 13:39
Voici un datagrid avec plusieurs dimension et allignement different

' dgprojet est tin datagrid
Dim dvprojets As DataView
Dim dsprojets As DataSet

Dim i As Integer
'il faut d'abord remplir la tables(0) de ton datatset

dvprojets = New DataView()
dvprojets = dsprojets.Tables(0).DefaultView
Dim tableStyle As DataGridTableStyle 'definition d'un nouvau style
tableStyle = New DataGridTableStyle()
tableStyle.MappingName = "PROJ" 'le MappingName doit etre le nom de la table
Dim numCols As Integer
numCols = dsprojets.Tables(0).Columns.Count
Dim aColumnTextColumn As DataGridTextBoxColumn
i = 0
Do While (i < numCols) 'formate toutes les collonnes
aColumnTextColumn = New DataGridTextBoxColumn()
aColumnTextColumn.HeaderText = dsprojets.Tables(0).Columns(i).ColumnName 'texte du header
aColumnTextColumn.MappingName = dsprojets.Tables(0).Columns(i).ColumnName 'texte de la colonne
aColumnTextColumn.Width = 80 'largeur
aColumnTextColumn.Alignment = HorizontalAlignment.Right 'alignement
If i = 0 Then
aColumnTextColumn.Width = 80 'premeire colonne taille 80
End If
If i = 2 Then
aColumnTextColumn.Width = 400 'troisime colonne taille 400
aColumnTextColumn.Alignment = HorizontalAlignment.Left
End If
If i = 3 Then
aColumnTextColumn.Width = 60
aColumnTextColumn.Alignment = HorizontalAlignment.Right
aColumnTextColumn.Format = "0.00" 'format de numerique
End If
If i = 4 Then
aColumnTextColumn.Width = 400
aColumnTextColumn.Alignment = HorizontalAlignment.Left
End If

tableStyle.GridColumnStyles.Add(aColumnTextColumn)
i = (i + 1)
Loop
' make the dataGrid use our new tablestyle and bind it to our table
dvprojets.Sort = "REFERENCE" 'tri pa defaut
dgProjets.TableStyles.Clear()
dgProjets.TableStyles.Add(tableStyle)
dgProjets.DataSource = dvprojets

glplpmat
3
cs_chris81 Messages postés 589 Date d'inscription jeudi 2 octobre 2003 Statut Membre Dernière intervention 29 avril 2008 2
1 nov. 2004 à 19:06
tu as peut etre MyDataGrid1.Column(1).columnwidht.
http://www.tarnweb.com
http://www.correzeweb.com
0
asem67 Messages postés 145 Date d'inscription mardi 3 septembre 2002 Statut Membre Dernière intervention 24 février 2008
1 nov. 2004 à 21:25
salut
voici le code que j'utilise


'  "tnom" >> table de la bd
'  "dtsetnom >> dataset
'  "dgTnom" >> mon DataGrid

    Private Sub mefdgNom() 'mise en form du datagrid Nom
        Dim dgstyle As New DataGridTableStyle
        Dim dgmanager As CurrencyManager = CType(BindingContext(DtSetNom.Tables.Item("tnom")), CurrencyManager)
        With dgstyle
            .MappingName = "tnom"
            'ici en peut definir les couleurs
            '.BackColor = System.Drawing.Color.Blue
            With .GridColumnStyles
'Premiere colonne (o)
                .Add(New DataGridTextBoxColumn(dgmanager.GetItemProperties.Item("id")))
                With .Item(0)
                    .MappingName = "id"
                    .HeaderText = "ID"
                    .Width = 30
                    .NullText = String.Empty
                    .ReadOnly = True
                End With
'Deuxieme colonne (1)
                .Add(New DataGridTextBoxColumn(dgmanager.GetItemProperties.Item("nom")))
                With .Item(1)
                    .MappingName = "nom"
                    .HeaderText = "NOM"
                    .Width = 300
                    .NullText = String.Empty
                End With
            End With
        End With
        dgTnom.TableStyles.Add(dgstyle)
    End Sub



A+
ASEM67 :)
0
cs_stargates Messages postés 40 Date d'inscription samedi 24 juillet 2004 Statut Membre Dernière intervention 10 janvier 2008
1 nov. 2004 à 21:25
Merci mais pas sur vbnet
0
Rejoignez-nous