Question

Je suis en train d'apprendre à utiliser MasterPages et ContentPlaceHolders dans ASP.NET 3.5 et C # - et en ce moment, je tente désespérément de modifier le contenu d'un asp: Content-Control par mon code de programmation

.

Le fond est ce; Dès qu'un bouton est pressé, je veux que le asp: Content à effacer et rempli de contenu généré par la dynamique * .cs-File

.

Mais je ne peux pas comprendre comment accéder au asp. Content-contrôle, ni par son numéro d'identification ou Page.FindControl etc

Alors, comment pouvez-vous modifier le contenu d'un asp: Content-Control dans votre code de programmation

Était-ce utile?

La solution

Vous pouvez accéder à un ContentPlaceHolder en utilisant FindControl pas sur l'objet page, mais sur sa page principale.

System.Web.UI.MasterPage masterPage = this.Master;
ContentPlaceHolder pageContent;

pageContent = (ContentPlaceHolder)masterPage.FindControl("YourContentPlaceholderName");

Je suis d'accord bien qu'il est préférable de définir un panneau ou un espace réservé dans ce bloc et l'accès qui, directement, plutôt que d'essayer de modifier le ContentPlaceHolder

Autres conseils

Vous pouvez mettre un asp: Panel dans le ContentPlaceHolder et déplacer le balisage d'espace réservé en elle. De cette façon, vous pouvez obtenir le conteneur Panel et manipuler son contenu.

Avez-vous oublié d'ajouter runat = "server" à votre asp: Content-Control

Cordialement,

M.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top