2008-10-28 7 views
6

Je me demandais s'il est possible de faire quelque chose comme ceci:Comment accéder au contenu d'un contrôle ASP.NET?

<uc1:TestControl ID="TestControl1" runat="server"> 
     <div>More random HTML, etc...</div> 
    </uc1:TestControl> 

je suis arrivé une erreur de « Type « System.Web.UI.UserControl » n'a pas une propriété publique nommée « div ». » . Faire un peu de recherche, je trouve que je pourrais ajouter la propriété suivante au contrôle du serveur:

[ParseChildren(false)] 
public partial class TestControl : System.Web.UI.UserControl 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 

    } 
} 

Est-il possible de lire le contenu d'un contrôle ASP.NET?

Edit: libellé modifié pour refléter que je suis curieux de savoir si vous pouvez le faire avec un serveur ou un contrôle utilisateur

Répondre

4

Dans un contrôle serveur, vous devez créer a property that implements ITemplate pour contenir ce contenu. Je ne suis pas certain que ce soit possible dans un contrôle utilisateur, mais c'est peut-être le cas.

0

oui, il est possible

vérifier ce MSDN article sur la création de contrôles utilisateur basés sur des modèles, plus vous pouvez ajouter [ParseChildren (false)] à la classe de contrôle utilisateur afin que vous puissiez les voir à partir de la page qui les détient. http://msdn.microsoft.com/en-us/library/36574bf6.aspx

espérons que cela aide.

Questions connexes