Creer une datagrid dynamique en dotnet

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

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.