Componente não aparece no código HTML
15/12/2009
0
Estou com um problema aqui que está me deixando maluco... Estou desenvolvendo em ASP.NET e tenho um componente que, hora deve ser visível e hora deve ser invisível...
O grande problema é que quando utilizo a propriedade .Visible = "true" (TextBox e Label), o componente aparece na tela corretamente, no entanto, quando peço ao navegador (IE e Firefox) para exibirem o código fonte, este componente não aparece... Se eu retirar do fonte os trechos onde é utilizada a propriedade Visible, funciona corretamente...
Alguém faz idéia do que possa ser??
Obrigado!!
Cassiano Gil
Posts
15/12/2009
Gboex -
Basicamente se você quiser esconder o objeto e conseguir ver o seu código fonte, deverá manipulá-lo via CSS, como por exemplo style="display:none". A diferença consiste na renderização do objeto, quando utiliza-se as propriedades do CSS para esconder (o objeto é montado mas não é exibido). Já configurando Visible = false isto não ocorre, pois é objeto é impedido de ser "montado" na parte cliente da aplicação.
Já passei por uma situação e vi na prática mais ou menos isto, tive que esconder um Panel e quando quis deixá-lo visível via java script eu não consegui. Logo, tive que substituir visible=false, por:
Panel.Style.Add(HtmlTextWriterStyle.Display, "inline"); // Deixar visível
Panel.Style.Add(HtmlTextWriterStyle.Display, "none"); // Deixar invisível
Referência: http://forums.asp.net/p/1412978/3104616.aspx
Att,
15/12/2009
Cassiano Gil
Acho que não é bem isso não... Em determinado momento eu quero deixá-lo invisível, mas no momento em que estou visualizando o fonte do html sua propriedade Visible está definida como TRUE e mesmo assim não aparece no fonte. OBS: Aparece na página, mas no HTML fonte não... Para solucionar estou utilizando ENABLED ao invés de VISIBLE... No entanto, gostaria de um esclarecimento a respeito, se possível..
Obrigado!!
16/12/2009
Netasper
17/12/2009
Cassiano Gil
Quer dizer que quando utilizo a propriedade Visible, independente de True ou False ele sempre vai definir o componente como
document.getElementByID("nomedoseucontrole").style.visibility = "hidden";
???
Obrigado!!
Clique aqui para fazer login e interagir na Comunidade :)