Passagem de parâmetros na gridview utilizando o Ajax.
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
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
Bruno Franco
Curtidas 0
Respostas
Eleuterio Gonzalez
13/03/2010
Veja esta materia talves ajude
http://guintherpauli.blogspot.com/2009/08/delphi-prism-firebird-aspnet-e-ajax.html
http://guintherpauli.blogspot.com/2009/08/delphi-prism-firebird-aspnet-e-ajax.html
GOSTEI 0
Marcio Silveira
13/03/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í.
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í.
GOSTEI 0
Netasper
13/03/2010
Marcio esta certo, se vai mudar de pagina, tem que ter o RoundTrip, então, para que usar UpdatePanel?
[]s
GOSTEI 0
Soeusei62
13/03/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
att,
Bruno
GOSTEI 0
Marcio Silveira
13/03/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
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
GOSTEI 0
Bruno Franco
13/03/2010
Então não existe nenhuma forma de passar parâmetros com o server.tranfer utilizando o ajax?
att,
Bruno
att,
Bruno
GOSTEI 0
Netasper
13/03/2010
Bruno, infelizmente não rola!!!
[]s
GOSTEI 0