Creer une datagrid dynamique en dotnet

Soyez le premier à donner votre avis sur cette source.

Snippet vu 18 042 fois - Téléchargée 40 fois

Contenu du snippet

j'en ai eu marre de chercher a faire une datagrid dynamiquement...alors je l'ai trouver le code..;et je le poste...ca peut re-servir

Source / Exemple :


Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        MakeNamesTable()
        CreateNewDataRow("REF", 12.54, 4, 12.54 * 4)
        CreateNewDataRow("REF2", 2.54, 3, 2.54 * 3)
        datab.Dock = DockStyle.Top
        datab.Height = 350
        Me.Controls.Add(datab)
    End Sub
    Private Sub CreateNewDataRow(ByVal reference As String, ByVal PU As Double, ByVal qte As Integer, ByVal total As Double)
        Dim myRow As DataRow
        myRow = namesTable.NewRow()
        ' On ajoute la nouvelle row a la collection
        myRow("Reference") = reference
        myRow("Prix_Unitaire") = PU
        myRow("Quantite") = qte
        myRow("Total") = total
        namesTable.Rows.Add(myRow)
        ''ici c t pour faire un dump...je le laisse ca peut servir
        ' Dim dc As DataColumn
        ' For Each dc In myTable.Columns
        ' Console.WriteLine(dc.ColumnName)
        ' Next
        datab.DataSource = namesTable
    End Sub
    Private Function MakeNamesTable() As DataTable
        ' creation de la DataTable nommée 'Names.'
        namesTable = New DataTable("Names")

        ' Ajout de 5 colonnes a la table : id,Reference,Prix_Unitaire,Quantite,Total
        Dim idColumn As DataColumn = New DataColumn()
        idColumn.DataType = System.Type.GetType("System.Int32")
        idColumn.ColumnName = "id"
        idColumn.AutoIncrement = True
        namesTable.Columns.Add(idColumn)

        Dim ReferenceColumn As DataColumn = New DataColumn()
        ReferenceColumn.DataType = System.Type.GetType("System.String")
        ReferenceColumn.ColumnName = "Reference"
        namesTable.Columns.Add(ReferenceColumn)

        Dim PUColumn As DataColumn = New DataColumn()
        PUColumn.DataType = System.Type.GetType("System.Double")
        PUColumn.ColumnName = "Prix_Unitaire"
        PUColumn.DefaultValue = "0"
        namesTable.Columns.Add(PUColumn)

        Dim QteColumn As DataColumn = New DataColumn()
        QteColumn.DataType = System.Type.GetType("System.Int32")
        QteColumn.ColumnName = "Quantite"
        namesTable.Columns.Add(QteColumn)

        Dim TotalColumn As DataColumn = New DataColumn()
        TotalColumn.DataType = System.Type.GetType("System.Double")
        TotalColumn.ColumnName = "Total"
        namesTable.Columns.Add(TotalColumn)
        Dim keys(0) As DataColumn
        keys(0) = idColumn
        namesTable.PrimaryKey = keys
    End Function

A voir également

Ajouter un commentaire

Commentaires

Messages postés
27
Date d'inscription
samedi 10 décembre 2005
Statut
Membre
Dernière intervention
29 mai 2006

j'ai ajouter une colonne dynamique sur mon datagrid dans un dataset est il marche bien sur dataset mais si j écrit objetdataadapter.update(objetdatatable) pour l'ajouter a la bd il marche pas ,il ajoute pas la colonne a la base de donées .
aider mois svp !!!!!!!!!
Messages postés
27
Date d'inscription
samedi 10 décembre 2005
Statut
Membre
Dernière intervention
29 mai 2006

j'ai ajouter une colonne dynamique sur mon datagrid dans un dataset est il marche bien sur dataset mais si j écrit objetdataadapter.update(objet.datatable) pour l'ajouter a la bd il marche pas ,il ajoute pas la colonne a la base de donées .
aider mois svp !!!!!!!!!
Messages postés
1
Date d'inscription
mardi 20 juillet 2004
Statut
Membre
Dernière intervention
8 septembre 2005

Pour le faire fonctionner :
1 - Declarer la variable public namesTable
Public namesTable
2 - Créer la Table via un Dataset

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim DS = New DataSet
namesTable = DS.Tables("TableQuiMarche")

MakeNamesTable()
CreateNewDataRow("REF", 12.54, 4, 12.54 * 4)
CreateNewDataRow("REF2", 2.54, 3, 2.54 * 3)
DataGrid1.Dock = DockStyle.Top
DataGrid1.Height = 350
Me.Controls.Add(DataGrid1)
End Sub
Messages postés
25
Date d'inscription
mercredi 20 juillet 2005
Statut
Membre
Dernière intervention
10 septembre 2008

slt je veut que tu m'explique les nom merci
Messages postés
40
Date d'inscription
mercredi 1 janvier 2003
Statut
Membre
Dernière intervention
23 septembre 2005

Je trouve pas non plus ce que c'est Namestable et datab (enfin ça je pense ke c le datagrid)
Merci d em'aider
Afficher les 10 commentaires

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.