Panneau visible=true n'a pas d'effet
J'ai un Panneau que je suis visible=true
explicitement. Le débogueur passe au-dessus de cette ligne et visible
encore évalue à False
sur la ligne suivante. Évidemment, en tant que conséquence, le groupe n'est pas montré. Comment est-ce possible?
pnlValidate.Visible = true;
if (IsPostBack) return;
<asp:Panel ID="pnlValidate" runat="server">
<asp:Button cssclass="submit2" ID="btnValidate" runat="server" Visible="false" text="Validate" OnClick="btnValidate_Click" /> <br />
<asp:TextBox ID="txt6sql" runat="server" Visible="false" TextMode="multiLine" Width="500" Height="200" ReadOnly="true" ToolTip="Report SQL Statement" />
</asp:Panel>
ASP.NET 2.0, aucun autre thread ou déglingués errata qui "devrait" être déconner avec mes membres.
Vous devez vous connecter pour publier un commentaire.
Est votre panneau de imbriquée à l'intérieur d'un autre panneau ou tout autre type de contenant qui est Visible à false?
Une telle situation, le comportement de votre observée est reproduit. Il serait judicieux d'interdire à définir la visibilité à true pour que le conteneur interne si un contenant extérieur est invisible depuis que signifie rien à l'intérieur doit être visible, même pas la div vide du panneau intérieur.
La propriété Visible semble être dépendante de la visibilité de l'extérieur des conteneurs, par exemple:
Ce code est comme prévu (faire conteneur externe visible d'abord, puis le contenant interne):
Ce code est un peu surprenant (faire récipient intérieur visible d'abord, puis conteneur externe):
Il semble que l'établissement et l'obtention de la propriété Visible est "asymétrique": Le Setter semble placer un drapeau dans le contrôle, mais la lecture de retourner une valeur calculée qui dépend de la visibilité de l'extérieur, les éléments et la visibilité de la commande elle-même.
Ne sais pas si cela va vous aider à tous.
Par défaut, le panneau n'a pas de frontière. Votre panneau est là, vous êtes tout simplement pas le voir parce qu'il est vide. Ensemble borderwidth="1" et vous verrez votre vide du panneau.
Problème résolu: Panneau est devenu visible quand j'ai enlevé
visible="false"
de contrôles enfants.