2009-07-23 4 views
0

J'ai ajouté par programmation une colonne à un GridView dans le seul but d'ajouter un HoverMenuExtender et un Panel à ses cellules. Le HoverMenuExtender s'affiche lorsque vous passez la souris sur une ligne sans problème.HoverMenuExtender n'apparaît pas à l'intérieur de la cellule du tableau masqué

Cependant, il y a maintenant une colonne supplémentaire dans ma grille que je ne veux pas là. J'ai essayé 3 choses pour le cacher:

1) mettre la colonne à Visible = false sur le serveur. Cela ne fonctionne pas car la colonne ne sera pas affichée, donc les HoverMenuExtenders n'existent pas sur la page.

2) mettre les cellules de la colonne en visibilité: caché. Cela fonctionne presque, mais les cellules occupent toujours le même espace sur la page que lorsqu'elles sont visibles (comme elles le devraient avec la visibilité).

3) définir les cellules de la colonne à afficher: aucune. Cela masque la colonne mais empêche l'affichage de hoverMenu pour une raison quelconque. Donc, ma question est la suivante: pourquoi l'option # 3 empêche-t-elle l'affichage de HoverMenuExtender lorsque je survole la rangée?

Le composant HoverMenuExtender ne doit-il pas indiquer que le composant div/panel est affiché: aucun de ces éléments, puis le modifier lorsque la cible est survolée?

Toutes les idées seraient super, je suis juste curieux. Merci pour la lecture ...

Répondre

0

De l'AutisticCuckoo

Comme aucune case est généré pour un élément avec display: none il est possible de faire l'un de ses subordonnés éléments visibles. Regard l'exemple suivant:

<div style="display:none"> 
    <p style="display:block">Text</p> 
</div> 

On pourrait penser que cela rendrait le paragraphe visible, mais ce n'est pas le cas. Puisque l'élément contenant <div> ne génère pas de boîte, son élément subordonné ne peut pas non plus.

Questions connexes