2010-06-30 18 views
0

J'ai une page maître avec plusieurs ContentPlaceHolders. L'un d'eux sera parfois vide. Si les deux ont du contenu, j'aimerais rendre visible un tampon afin qu'il y ait de l'espace entre eux, mais cela devrait rester caché autrement.Obtention du contenu de ContentPlaceHolder dans C#

Ma question est, comment puis-je déterminer à partir du code-behind C# de ma page maître si le ContentPlaceHolder d'une page enfant a du contenu qui lui est assigné? Tout ce que je veux vraiment, c'est une réponse booléenne oui/non.

Merci!

Répondre

0

peut-être

YourContentPlaceHolder.Controls.Count > 0 

Est-ce que ce travail pour vous?

+0

Je ne pense pas que cela fonctionnera si le HTML est placé là. Pour autant que je sache, seuls les contrôles côté serveur sont dans la propriété .Controls. – Gertjan

0

Peut-être qu'il me manque quelque chose, mais il semble que vous ayez juste besoin d'espacement. Pourquoi ne pas simplement entourer le premier ContentPlaceHolder dans un div avec un padding-bottom? Il y a peut-être un moyen plus efficace de le faire, mais vous avez l'idée.

0

Vous pouvez ajouter un programme div à votre première ContentPlaceHolder avec quelque chose comme ...

<div class="spacer" /> 

et dans votre css ont ce ...

div.spacer { margin-bottom: 5ex; } 

vous devrez peut-être mettre un &nbsp dans la div pour contourner quelques bugs de navigateur :)