IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

Ajout de code html depuis le code behind


Sujet :

ASP.NET

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2008
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 50
    Points : 26
    Points
    26
    Par défaut Ajout de code html depuis le code behind
    Bonjour à tous,

    Je bloque sur un truc idiot

    Je cherche a ajouter un tableau html dans ma page asp depuis mon code behind..

    j'ai donc naturelement fais un Response.Write("<table>...");

    Mais pour une raison que j'ignore ca me le rajoute toujours apres ma balise de fin </html>

    Mon but final étant d'avoir une classe à qui l'ont transmet le Page.Response pour qu'elle ajoute un tableau html et change le content type pour l'ouvrir dans Excel.

    Je précise que je ne peux toucher le fichier .aspx vu que c'est une classe qui pourrait être utilisé n'importe ou.

    Cela vous parle ?

  2. #2
    Nouveau membre du Club
    Inscrit en
    Mars 2008
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    Voici mon code de test:

    code behind aspx.cs
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
                protected void Page_Load(object sender, EventArgs e)
                {
                    Response.ContentType = "application/vnd.ms-excel";
                    Response.Write("<table><tr><td>test</td></tr></table>");
                }
    et la page aspx:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="unit.aspx.cs" Inherits="test.unit" %>
    <!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 >
    <title>Untitled Page</title>
    </head>
    <body>
    </body>
    </html>
    petite précision le code html est ajouté en début de page en utilisant response.write et en fin de page en passant par un page.controls.add

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    459
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 459
    Points : 553
    Points
    553
    Par défaut
    Tu peux regarder du côté du HtmlGenericControl.

  4. #4
    Nouveau membre du Club
    Inscrit en
    Mars 2008
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    Hum.. le problème c'est que je n'est aucun moyen d'ajouter un placeholder ou quoi que ce soit dans la page asp.

  5. #5
    Nouveau membre du Club
    Inscrit en
    Mars 2008
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    J'ai trouvé une solution pour le cas ou j'utilise de page.Response.Write("") il faut ajoute un Response.End

    Bon maintenant soit je trouve pourquoi mon control HTMLtable est ajouté a la fin soit je trouve comment le convertir en string..

  6. #6
    Membre actif
    Inscrit en
    Janvier 2005
    Messages
    218
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 218
    Points : 247
    Points
    247
    Par défaut
    Tu peux générer tout le code HTML que tu souhaites en utilisant des objets c#.

    Il suffit de déclarer un objet Table ASP.NET dans ta page WEB, et une fois ceci fait, tu peux lui insérer ce que tu veux dedans.

    Exemple :

    dans le code ASPX
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <asp:Table runat="Server" id="Tbl_test"></asp:Table>
    dans le Page_Load

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    TableRow TR = new TableRow();
    TableCell TD = new TableCell();
    Label LB = new Label();
     
    LB.Text = "Ceci est un test";
    LB.ForeColor = Color.Black;
     
     
    TD.Controls.Add(LB);
    TR.Controls.Add(TD);
    Tbl_test.Controls.Add(TR);

  7. #7
    Nouveau membre du Club
    Inscrit en
    Mars 2008
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 50
    Points : 26
    Points
    26
    Par défaut
    Comme je l'ais dit plus haut je n'ai pas accé au code ASPX..

    Mais j'ai trouvé une solution

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
            public string GetControlHtml(Control c)
            {
                System.IO.
                StringWriter sw = new System.IO.StringWriter();
                HtmlTextWriter hw = new HtmlTextWriter(sw);
                c.RenderControl(hw);
                return sw.ToString();
            }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. champ formulaire endommage avec code html depuis bdd
    Par cd090580 dans le forum Langage
    Réponses: 2
    Dernier message: 24/08/2007, 19h14
  2. Afficher une page HTML à partir de code HTML
    Par lilou77 dans le forum Interfaces Graphiques en Java
    Réponses: 1
    Dernier message: 18/01/2007, 11h52
  3. [HTML] mettre un code html visible sur la page
    Par Him dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 07/08/2006, 10h31
  4. [PHP-JS] Supprimer le code javascript d'un code HTML
    Par AlphaYoDa dans le forum Langage
    Réponses: 6
    Dernier message: 21/02/2006, 22h40
  5. [JS] Appeler du code C# depuis du code JS
    Par DontNet dans le forum ASP.NET
    Réponses: 3
    Dernier message: 05/05/2005, 19h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo