none
Montar HTML de uma ListView via C#/ASP.NET RRS feed

  • Question

  • Pessoal,

    Tenho uma aplicação onde o usuário vai escrevendo em um input e uma caixa logo abaixo vai filtrando de acordo com ele digita.

     

    Pois bem, com jquery, eu valido o keyup e entro em um webmethod onde eu monto uma ListView nova... mas minha dúvida é a seguinte: 

    Como uso o updater do jquery, ele deve retornar um HTML para que eu dê o appen em algum lugar..

    Então após montar minha ListView, preciso do HTML dela... isto é possível no c#? Ou existe uma maneira melhor de fazer?

    Obrigado!

    Tuesday, September 27, 2011 11:13 PM

Answers

  • Para pegar o html de um controle você pode fazer assim:

     

     

    StringBuilder sb = new StringBuilder();
    StringWriter tw = new StringWriter(sb);
    HtmlTextWriter hw = new HtmlTextWriter(tw);
    ltvItens.RenderControl(hw);
    string htmlGerado = sb.ToString();



    http://samuelcazelli.blogspot.com/

    • Edited by Samuel_Cazelli Wednesday, September 28, 2011 10:50 AM
    • Marked as answer by Breno Riba Thursday, September 29, 2011 1:50 PM
    Wednesday, September 28, 2011 10:49 AM

All replies

  • Para pegar o html de um controle você pode fazer assim:

     

     

    StringBuilder sb = new StringBuilder();
    StringWriter tw = new StringWriter(sb);
    HtmlTextWriter hw = new HtmlTextWriter(tw);
    ltvItens.RenderControl(hw);
    string htmlGerado = sb.ToString();



    http://samuelcazelli.blogspot.com/

    • Edited by Samuel_Cazelli Wednesday, September 28, 2011 10:50 AM
    • Marked as answer by Breno Riba Thursday, September 29, 2011 1:50 PM
    Wednesday, September 28, 2011 10:49 AM
  • Faz como o samuel falou, mais coloque alguma div para vc poder fazer o render na posição correta
    Não esqueça de usar o componente </> na barra para posta seu código. Microsoft MCPD,MCTS,MCC
    Wednesday, September 28, 2011 11:06 AM
    Moderator
  • Pessoal muito obrigado, acho que o caminho é este... por algum motivo está sempre vindo em branco.. mesmo tendo valor no ListView..

     

    StringBuilder  builder    = new StringBuilder();

    StringWriter   writer     = new StringWriter(builder);

    HtmlTextWriter htmlWriter = new HtmlTextWriter(writer);

    m_instance.lvSelectionPane.RenderControl(htmlWriter);

    string html = builder.ToString();

    Wednesday, September 28, 2011 1:55 PM
  •  

    Tem certesa que está populando o listview antes de executar o código?


    http://samuelcazelli.blogspot.com/
    Thursday, September 29, 2011 10:57 AM
  • Tenho sim.. mas vou fazer outros testes para ver o que está acontecendo! ;)
    Thursday, September 29, 2011 1:49 PM