Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Ajout d'un TableRow X fois dans un Table

3 réponses
Avatar
Maignan Bruno
Bonjour, je voudrais ajouter un TableRow X fois dans un WebControle Table
(<asp:table id=Table1 />), voici un petit exemple de mon code behind :
Dim mTableRow As New TableRow
Dim mTableCell As New TableCell
Dim mLabel As New Label

mLabel.Text = "Test"
mTableCell.Controls.Add(mLabel)
mTableRow.Cells.Add(mTableCell)

For i As Integer = 0 To 10
Me.Table1.Rows.Add(mTableRow)
Next

Donc j'aimerais obtenir 10 lignes dans mon tableau, mais je n'affiche qu'une
seule ligne, meme si je change les IDs de mes webcontrole (TableRow,
TableCell et Label) ?

Merci d'avance pour votre/vos réponse(s).

3 réponses

Avatar
Jérémy Jeanson
Bonjour Bruno,

Ton souci est relativement simple, il faut jsute que tu reprennes ta
question : tu veux ajoutuer 10 "nouvelles" lignes. Dcon en théorie on
devrait voir 10 * "new" :)

Donc dans ta boucle tu dois faire 10 lignes comem ceci par exemple :

Dim mTableRow As TableRow
Dim mTableCell As TableCell
Dim mLabel As Label

For i As Integer = 0 To 10
mTableRow = New TableRow()
mTableCell = New TableCell()
mLabel = New Label()

mLabel.Text = "Test"
mTableCell.Controls.Add(mLabel)
mTableRow.Cells.Add(mTableCell)

Me.Table1.Rows.Add(mTableRow)
Next

Non testé, mais ça marche comme ça :)
--
Jérémy JEANSON
MCP
http://www.jjeanson.fr
Avatar
Maignan Bruno
Bonjour Jérémy,

Merci pour ta réponse et effectivement je gère les nouvelles lignes de cette
façon, mais je n'ai pas été précis dans ma question et mon exemple. Donc je
veux réutiliser une ligne créée (par une fonction) pour l'insérer par la
suite dans un table à divers endroits.

"Jérémy Jeanson" a écrit :

Bonjour Bruno,

Ton souci est relativement simple, il faut jsute que tu reprennes ta
question : tu veux ajoutuer 10 "nouvelles" lignes. Dcon en théorie on
devrait voir 10 * "new" :)

Donc dans ta boucle tu dois faire 10 lignes comem ceci par exemple :

Dim mTableRow As TableRow
Dim mTableCell As TableCell
Dim mLabel As Label

For i As Integer = 0 To 10
mTableRow = New TableRow()
mTableCell = New TableCell()
mLabel = New Label()

mLabel.Text = "Test"
mTableCell.Controls.Add(mLabel)
mTableRow.Cells.Add(mTableCell)

Me.Table1.Rows.Add(mTableRow)
Next

Non testé, mais ça marche comme ça :)
--
Jérémy JEANSON
MCP
http://www.jjeanson.fr



Avatar
Jérémy Jeanson
Effectivement le souci n'est pas le même. Vu qu'il n'existe pas de
méthode de copie ou de clonage de ligne, je pense que tu vas devoir
reutiliser plusieurs fois ta fonction, ou alors créer une méthode qui
clone les lignes.
--
Jérémy JEANSON
MCP
http://www.jjeanson.fr