Usuário com melhor resposta
Transformar o HTML de um Textbox em texto normal

Pergunta
-
Olá pessoal, estou com uma dúvida no VB.NET.
Estou precisando carregar os dados de uma coluna do banco que está com conteúdo em HTML, mas ocorre que ao carregar na textbox, está carregando em HTML (obvio). Gostaria de saber como faço para pegar a string que veio do banco e quando jogar no textbox, ela preencher somente o texto normal, sem as tags?
Obrigado
Rafael Muzel
Respostas
-
Então mano, daí fica inviável, então consegui com outra maneira.
utilizei um artifício de colocar um Label dentro de um panel, daí funcionou, então coloca a cor de fundo do panel em branco e aceita barra de rolagem. Se quiser pode colocar uma borda preta de 1px que fica bom tbm.
Abraços galera!- Marcado como Resposta King-Kong quarta-feira, 22 de julho de 2009 17:20
Todas as Respostas
-
-
-
Olá Rafael, tudo bem? Você utilizar uma expressão regular para remover o contéudo HTML de seu texto, algo do tipo:
public string RemoverHTML(string texto) { return Regex.Replace(texto, @”<(.|\n)*?>”, string.Empty); }
Depois você pode fazer:
txtConteudo.Text = RemoverHTML(reader["Conteudo"].ToString());
Creio que isso resolve seu problema...
Espero que ajude
um abraço
Att,
Felipe Oriani ...O rio atinge os seu objetivos porque aprendeu a contornas os obstáculos... por André Luiz -
-
Rafael,
Dá uma olhada nesse artigo. Acho que vai te ajudar:
http://dotnetperls.com/remove-html-tags
Espero ter ajudado. Caso consiga solucionar o problema em função desta resposta, peço por favor, clicar em “Marcar como Resposta” para que outras pessoas também possam usufruir deste conteúdo.Abraço.
Daniel Garcia
MCP, MCTS, MCDP
Meu blog: www.danielgarcia.com.br -
Então, até funcionou, obrigado.
Mas eu gostaria de "aproveitar" a formatação e não apenas eliminar as tags da string, por exemplo onde tem um <BR /> eu colocar um enter no código, pois a textbox é multiline.
Tem algum jeito ou eu tenho que utilizar outro artifício, tipo um label com barra de rolagem? -
Olá, então, neste caso você teria que tratar caracter por caracter... por exemplo:
public string RemoverHTML(string texto) { texto = texto.Replace("<br />","\n"); //pula linha em ascii return Regex.Replace(texto, @”<(.|\n)*?>”, string.Empty); }
Dessa forma você teria um controle maior...
Felipe Oriani ...O rio atinge os seu objetivos porque aprendeu a contornas os obstáculos... por André Luiz -
Então mano, daí fica inviável, então consegui com outra maneira.
utilizei um artifício de colocar um Label dentro de um panel, daí funcionou, então coloca a cor de fundo do panel em branco e aceita barra de rolagem. Se quiser pode colocar uma borda preta de 1px que fica bom tbm.
Abraços galera!- Marcado como Resposta King-Kong quarta-feira, 22 de julho de 2009 17:20