none
Problema na construção de componente (Multiple IDs defined) RRS feed

  • Pergunta

  • Boa noite,

    estou construindo um WebGrid em C# ainda com Framework 1.1 e me deparei com um problema onde não sei mais onde buscar solução.

    Meu WebGrid resumidamente funciona dessa maneira:

    - Determino as Colunas que ele irá ter e atribuo um ID a elas
    - Feito isso, faço um loop dentro dos itens e saio criando os controles nelas especificados (TextBoxes, por exemplo) e na sequência renderizo-os na tela
    - Ai entra a "ideia" do Grid: exibir um botão "Adicionar" que ativa um JavaScript montado durante o Load do Grid para criar colunas em branco prontas para o usuário preencher. Os controles são criados todos com o mesmo Name/Id para que quandoa  tela for postada eu possa fazer um Request.Form e recuperar seus valores.
    - Até aqui vai bem, mas quando posto a tela e dentro do OnInit do controle recupero os valores e monto os campos para que sejam apresentados na tela encontro o seguinte problema: dentro do HTML/JavaScript podemos ter diversos controles com mesmo Name/Id que eles formaram uma espécie de Array, no entando no ASP.NET até onde vi os controles devem ter um UniqueID, ou seja, o campo ID não pode ser repetido.

    Então venho em busca de alguma solução para, dinamicamente adicionar quantos controles do mesmo tipo eu quiser e logo após recuperar o seu valor, mas sem inventar nada absurdo para controle dos seus nomes, pois acredito que deve haver uma maneira de colocar código antes da renderização dos controles para evitar esse problema, ou pelo menos, contornar de alguma forma.

    Meu grid tem como objetivo funcionar de maneira parecida com esse da Infragistics:
    http://samples.infragistics.com/2006.2/WebGrid/FixedAddRow/FixedAddRow.aspx

    Qualquer sugestão é muito bem vinda!

    Muito obrigado!

    Att.
    Antonio Carlos

    quarta-feira, 1 de novembro de 2006 03:25

Todas as Respostas

  • Antonio,

    Vc precisa que seja feito no client ?? Não pode dar postback na tela??

    Pergunto, pois vc poderia executar uma sub no click do botão "Adicionar" que adicione as colunas via codebehind, assim o próprio ASP.NET se encarrega de criar os nomes certos para os objetos e tudo mais.

    O que acha??

    quarta-feira, 8 de novembro de 2006 17:26