Asp.net - comment créer son propre datatable et l'alimenter

Soyez le premier à donner votre avis sur cette source.

Snippet vu 26 166 fois - Téléchargée 35 fois

Contenu du snippet

Dans le cadre d'un développement et de l'utilisation des composants du framework, il peut être très utile de construire soit même son DataTable, par exemple en vu de le 'Binder' dans un DataGrid.

Source / Exemple :


' l'exemple va être une création d'un DataTable avec 2 colonnes (un ID et un texte)

' Dans le fichier xxx.VB

...
Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid
...

Dim MaTable As DataTable = New DataTable()
Dim myColumn As DataColumn = New DataColumn()
Dim myRow As DataRow

myColumn.DataType = System.Type.GetType("System.Int32")
myColumn.AllowDBNull = False
myColumn.Caption = "ID"
myColumn.ColumnName = "ID"
MaTable.Columns.Add(myColumn)

myColumn = New DataColumn()
myColumn.DataType = System.Type.GetType("System.String")
myColumn.Caption = "Description"
myColumn.ColumnName = "Description"
MaTable.Columns.Add(myColumn)

For i = 0 To (10)
 myRow = MaTable.NewRow()
 myRow("ID") = i
 myRow("Description") = "Codes-Sources"
 MaTable.Rows.Add(myRow)
Next

...

DataGrid1.DataSource = MaTable
DataGrid1.DataBind()

' -----------------------------
' Dans le fichier xxx.ASPX (par exemple)

...
<asp:DataGrid id="DataGrid1" runat="server" Font-Size="XX-Small" Width="100%" Font-Italic="True">
  <HeaderStyle Font-Italic="True" Font-Bold="True"></HeaderStyle>
</asp:DataGrid>
...

Conclusion :


Ceci peut être utile dans tout développement ASP.NET.

Bon coding.

Romelard Fabrice (Alias F___)

A voir également

Ajouter un commentaire Commentaires
Messages postés
7
Date d'inscription
lundi 3 février 2003
Statut
Membre
Dernière intervention
30 mai 2006

Très bon code.

merci
Messages postés
338
Date d'inscription
jeudi 22 août 2002
Statut
Membre
Dernière intervention
14 juin 2005

j'ai enfin trouvé la solution grace a l'objet ViewState, demain je simplifie et commente mon code pour le poster :)
Messages postés
338
Date d'inscription
jeudi 22 août 2002
Statut
Membre
Dernière intervention
14 juin 2005

j'ai essayé de déclarer mon DataTable juste apres les déclaration de controles, ca ne fonctionne que en static, mais si 2 utilisateurs affichent la meme page, les données sont communes.

j'ai essayé de trouver qqchose avec l'objet Page, mais j'ai rien trouvé ... as-tu une idée ?

(le problème est que la classe qui correspond a la page est réinstanciée a chaque postback)
Messages postés
1765
Date d'inscription
jeudi 12 octobre 2000
Statut
Modérateur
Dernière intervention
11 décembre 2013
6
Pas de problème pour moi, tant qu'une évolution est faite sur la mienne, il est normal de vouloir la partager.
Ca ne me dérange pas du tout et je te souhaite que cela fonctionne.

F___
Messages postés
338
Date d'inscription
jeudi 22 août 2002
Statut
Membre
Dernière intervention
14 juin 2005

d'accord, j'essayerais ca lundi :) (pas d'asp.net chez moi)

si j'y arrive, me permettrais-tu de poser une source qui serait un complement de la tienne, avec possibilité d'ajout/suppression/maj dans le datagrid pour récupérer le datatable modifié ?
Afficher les 9 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.