[C#] Remplissage Panel avec HtmlTextWriter [Résolu]

Messages postés
112
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 juin 2010
- - Dernière réponse : furefure
Messages postés
2
Date d'inscription
mardi 13 avril 2010
Statut
Membre
Dernière intervention
22 mars 2011
- 21 avril 2010 à 15:26
Bonjout,

J'aimerai remplir dynamique un panel grâce à HtmlTextWriter, le problème est que rien ne s'affiche lors d'un click de bouton.
Voici ma méthode :
Dans cette méthode, il n'y a tout le corps de la méthode. A titre de test, je voulais afficher trois colonnes d'en-tete.

///

<summary>

/// Fill referenciel panel with an id

///</summary>

///Activity domain id

///<returns>Html Table</returns>

public
HtmlTextWriter FillRefPane(
int id){

TextWriter stringWriter =
new
StringWriter();

HtmlTextWriter html =
new
HtmlTextWriter(stringWriter); 

// begin table taghtml.RenderBeginTag(

HtmlTextWriterTag.Table);
// <table>

// begin table header taghtml.RenderBeginTag(

HtmlTextWriterTag.Tr);
// <tr>html.RenderBeginTag(

HtmlTextWriterTag.Th);
// <td>html.Write(

"RefHeaderText1");html.RenderEndTag();

// </td>html.RenderBeginTag(

HtmlTextWriterTag.Th);
// <td>html.Write(

"RefHeaderText2");html.RenderEndTag();

// </td>html.RenderBeginTag(

HtmlTextWriterTag.Th);
// <td>html.Write(

"RefHeaderText3");html.RenderEndTag();

// </td>html.RenderEndTag();

// </tr>

return html;}

 

Et la méthode de Panel que je souhaitai utiliser est  this
.RefPane.RenderControl(
this.FillRefPane(1));

Pouvez-vous me dire ce que je dois faire pour afficher la table ! Merci !
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
6827
Date d'inscription
dimanche 15 décembre 2002
Statut
Modérateur
Dernière intervention
13 octobre 2010
15
3
Merci
Bonjour,

http://msdn2.microsoft.com/en-us/library/system.web.ui.control.rendercontrol.aspx 

tu fais tout le contraire de la méthode RenderControl, normalement on lui passe un TextWriter pour que le controle écrive dedans, et non le contraire ....
Bref, tu ne peux pas utiliser la méthode RenderControl pour faire ce que tu souhaites. Pourquoi ne pas tout simplement utiliser un contrôle Literal ainsi que sa propriété Text ?
En tout cas, je ne comprend pas l'interet de vouloir "remplir" un panel avec un TextWriter c'est la logique inverse d'ASP.net ...

<hr />Cyril - MSP - MCPD ASP.net & MCTS SQL - Consultant indépendant

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 154 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jesusonline
Messages postés
112
Date d'inscription
vendredi 15 avril 2005
Statut
Membre
Dernière intervention
13 juin 2010
1
0
Merci
Salut à toi,

En effet, je me suis rendu compte tout seul et j'ai même utiliser le control Litteral pour pour afficher ce que je souhaite et l'afficher grace à la propriété Text.

J'ai été bête de faire ce que j'ai fait !

N'importe quoi.

Enfin bon, j'ai trouvé la solution seul ! mais merci pour ton post. J'aurai dû venir que le problème a été résolus.
Commenter la réponse de The Red Man
Messages postés
2
Date d'inscription
mardi 13 avril 2010
Statut
Membre
Dernière intervention
22 mars 2011
0
Merci
bon je voudrais mettre un texte dans un panel en C#.net. une idée ?
Commenter la réponse de furefure