[.NET 2.0] DataList => Comment créer un tableau ?
Salut
Je suis en train d'essayer de construire un tableau avec ASP.Net 2.0 et l'élément DataList. Je me suis fortement inspiré de cette page pour cela
J'ai donc créé une page ASPX avec le code suivant
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Stats.aspx.cs" Inherits="Stats_ASPX_Stats" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Page sans titre</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:DataList ID="tbl_test" runat="server" ShowFooter="true" ShowHeader="true">
<HeaderTemplate>
<table>
<thead>
<tr>
<th>Titre 1</th>
<th>Titre 2</th>
</tr>
</thead>
<tbody>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><%# DataBinder.Eval(Container.DataItem, "COLONE1") %></td>
<td><%# DataBinder.Eval(Container.DataItem, "COLONE2") %></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</tbody>
</table>
</FooterTemplate>
</asp:DataList>
</div>
</form>
</body>
</html> |
et voici ma feuille de code
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
private SqlCommand SQL_Commande = new SqlCommand();
private SqlDataAdapter SQL_Resultat = new SqlDataAdapter();
private DataSet SQL_Rapatrie = new DataSet();
private void executeSQLTable(string SQL)
{
SQL_Commande.CommandText = SQL;
SQL_Resultat = new SqlDataAdapter(SQL_Commande);
SQL_Resultat.Fill(SQL_Rapatrie, "TBL_SESSION");
tbl_test.DataSource = SQL_Rapatrie.Tables["TBL_SESSION"].DefaultView;
tbl_test.DataBind();
}
private void load()
{
string SQL = "SELECT *\n" +
"FROM " + con.PMBase + ".dbo.TBL_SESSION";
executeSQLTable(SQL);
} |
Seulement j'obtient un code HTML qui est certes affiché comme je veux, mais le code généré n'est pas beau du tout.
Voilà le code généré (juste la partie concernant le DataList)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| table id="tbl_test" cellspacing="0" border="0" style="border-collapse:collapse;">
<tr>
<td>
<!-- Mon header -->
<table>
<thead>
<tr>
<th>IPN</th>
<th>Pages consultées</th>
</tr>
</thead>
<tbody>
<!-- Fin de mon header -->
</td>
</tr><tr>
<td>
<!-- Une ligne -->
<tr>
<td>jdayot</td>
<td>001000000000010 </td>
</tr>
<!-- Fin de la ligne -->
</td>
</tr><tr>
<td>
<!-- Une ligne -->
<tr>
<td>jdayot</td>
<td>000000000000000 </td>
</tr>
<!-- Fin de la ligne -->
</td>
</tr><tr>
<td>
<!-- Mon footer -->
</tbody>
</table>
<!-- Fin de mon footer -->
</td>
</tr>
</table> |
En gros, je cherche, soit l'objet qu'il faut utiliser à la place de DataList et qui ne génère pas les balises "<table> <tr> <td> <!-- ce que j'ai mis dans mon template -->...", soit le moyen de faire en sorte que le DataList ne me génère pas le code suscité
Merci d'avance (je me demande si mon explication est compréhensible)
PS : Oui je "débute" en C# (je n'ai aucune formation, et je travaille trop comme je faisait en ASP pas .Net où je génère des grosses lignes de code HTML brut sans utiliser de composants ASP.Net et puis tout d'un coup je me rends compte qu'un controle ASP.Net fait exactement ce que je voulais :S) même si ca fait 3 mois que je pratique