Array
(
)

Passagem de parâmetros na gridview utilizando o Ajax.

Bruno Franco
   - 13 mar 2010

Eu estou trabalhando em uma aplicação WEB onde preciso passar um parâmetro de uma gridview para outra página. Estou utilizando um buttonfield através do server.transfer(). Estava conseguindo realizar esta tarefa com êxito até o momento que comecei a utilizar o Ajax. Acho que o update panel está bloqueando alguma funcionalidade da grid, e está acorrendo o seguinte erro:

Como passo consertar isto? Abaixo está a código que utilizei:

aspx:

<asp:GridView ID="gdvListarBuscaAssociado" runat="server" CellPadding="4"
                         ForeColor="#333333" GridLines="None"
    style="margin-top: 0px" Width="834px"
                         AutoGenerateColumns="False"
                         onrowcommand="gdvListarBuscaAssociado_RowCommand"
                         onrowcreated="gdvListarBuscaAssociado_RowCreated"
                         >
                                 <RowStyle BackColor="#E3EAEB" />
                                 <Columns>
                                     <asp:BoundField DataField="nome_razaosocial" HeaderText="Nome/Razão Social" />
                                     <asp:BoundField DataField="nomefantasia" HeaderText="Nome Fantasia" />
                                     <asp:BoundField DataField="usu_cpf_cnpj" HeaderText="CPF/CNPJ" />
                                     <asp:BoundField DataField="id_insc_estadual" HeaderText="ID/Insc. Estadual" />
                                     <asp:BoundField DataField="email" HeaderText="Email" />
                                     <asp:BoundField DataField="cep" HeaderText="CEP" />
                                     <asp:BoundField DataField="endereco" HeaderText="Endereco" />
                                     <asp:BoundField DataField="bairro" HeaderText="Bairro" />
                                     <asp:BoundField DataField="telefone" HeaderText="Telefone" />
                                     <asp:BoundField DataField="celular" HeaderText="Celular" />
                                     <asp:BoundField DataField="fax" HeaderText="Fax" />
                                     <asp:ButtonField CommandName="CPF_CNPJ" Text="Detalhes" />
                                 </Columns>
                                 <FooterStyle BackColor="#1C5E55" Font-Bold="True" ForeColor="White" />
                                 <PagerStyle BackColor="#666666" ForeColor="White" HorizontalAlign="Center" />
                                 <SelectedRowStyle BackColor="#C5BBAF" Font-Bold="True" ForeColor="#333333"
                             Width="2px" />
                                 <HeaderStyle BackColor="#1C5E55" Font-Bold="True" ForeColor="White" />
                                 <EditRowStyle BackColor="#7C6F57" />
                                 <AlternatingRowStyle BackColor="White" />
                             </asp:GridView>

aspx.cs

    protected void gdvListarBuscaAssociado_RowCommand(object sender, GridViewCommandEventArgs e)
    {
        if (e.CommandName == "CPF_CNPJ")
        {
            int index = Convert.ToInt32(e.CommandArgument);
            GridViewRow row = gdvListarBuscaAssociado.Rows[index];
            string cpf_cnpj = row.Cells[2].Text;
            Session["usu_cpf_cnpj"] = cpf_cnpj;
            Server.Transfer("ExibirLocalizacaoAssociado.aspx", true);
        }
    }

Desde já agradeço a atenção,

abraços,

Bruno

Eleuterio Gonzalez
   - 13 mar 2010

Veja esta materia talves ajude
http://guintherpauli.blogspot.com/2009/08/delphi-prism-firebird-aspnet-e-ajax.html

0
|
0

Marcio
   - 15 mar 2010

A causa do erro apresentado é que quando você está usando Ajax você não pode utilizar Response.Write, Response.End, Server.Transfer, etc.
Analisando assim por cima acho que, neste caso, não seja necessário utilizar o updatepanel (visto que você vai mudar de página mesmo), mas dá uma pensada aí.

0
|
0

Netasper
   - 16 mar 2010

Marcio esta certo, se vai mudar de pagina, tem que ter o RoundTrip, então, para que usar UpdatePanel?

 

[]s

0
|
0

Soeusei62
   - 23 mar 2010

Dentro da mesma página eu disponibilizei uma textbox onde será feita uma pesquisa incremental na grid. Assim eu utilizei o update panel dentro da grid pois senão a cada busca seria necessário dar um postback em toda a página.

att,

Bruno

0
|
0

Marcio
   - 23 mar 2010

Ok, foi isso que eu quis dizer, olhando assim por cima, não parecia ter necessidade.
Mas de qualquer forma o erro que deu foi por causa de algum comando de Servidor que você usou dentro da área aonde está usando Ajax.
Coisas como Response.Write, Server.Transfer, etc.

Abraços

0
|
0

Bruno Franco
   - 27 mar 2010

Então não existe nenhuma forma de passar parâmetros com o server.tranfer utilizando o ajax?

att,

Bruno

0
|
0

Netasper
   - 29 mar 2010

Bruno, infelizmente não rola!!!   []s

0
|
0