Usuário com melhor resposta
Problemas pra capturar o id do Gridview

Pergunta
-
Pessoal,
Boa noite, estou com um grande problema.
Na minha aplicação, eu faço o filtro e trago o grid carregado, clico pra editar os dados ele abre o pop-up com os dados de acordo com o id que passei, se faço uma nova pesquisa, ele traz os dados, mas quando vou editar os dados são referente ao id anterior.
Alguem pode me dar um help?
Segue abaixo o trecho de código da Grid
<dxwgv:GridViewDataTextColumn VisibleIndex="2" Caption="Ação" Width="150px">
<HeaderStyle HorizontalAlign="Left" />
<CellStyle HorizontalAlign="Left"/>
<HeaderTemplate>
<asp:LinkButton ID="lbtNovo" Text="Novo" Font-Size="12px" on OnCommand="grdmensagem_AbreEditar" runat="server" OnClientClick="Exibir();" Font-Bold="true" />
</HeaderTemplate>
<DataItemTemplate>
<asp:LinkButton ID="lbtDetalhes" CommandArgument='<%# Eval("msg_codigo")%>' Text="Detalhes" Font-Size="10px" runat="server" OnCommand="grdmensagem_AbreEditar" AutoPostBack="False" />
</DataItemTemplate>
</dxwgv:GridViewDataTextColumn>
codigo cs
protected void grdmensagem_AbreEditar(object sender, CommandEventArgs e)
{
DataTable dt = DAL.DAL_MENSAGEM.selectMensagem(Convert.ToInt32(e.CommandArgument.ToString()));
txt_descricaoCurtaEdit.Text = dt.Rows[0]["msg_desc_curta"].ToString();
txt_descricaoLongaEdit.Text = dt.Rows[0]["msg_desc_longa"].ToString();
txt_idMensagemEdit.Text = dt.Rows[0]["msg_codigo"].ToString();
hdn_defineTipo.Value = "2";
txt_idMensagemEdit.ReadOnly = true;
}
Já tentei dar um DataSource=null, para limpar a grid mas nada adianta, se alguem puder me ajudar
ficarei muito grata.
Desde já agradeço a atenção de todos
Jacqueline Sabino
Respostas
-
Estou usando DevExpress.
Jacqueline Sabino- Marcado como Resposta Jack Sabino sexta-feira, 4 de novembro de 2011 18:29
Todas as Respostas
-
Fala Jack..
Tenho duas sugestões:
1 - Após o DataSource=null você precisa fazer um DataBind() no grid.
2 - Verifique se o seu grid não esta regarregando após o postback. eu ja tive este problema. Verifique o Page_Load da sua página
OK?
Francisco Gonçalves
Blog: franciscogoncalves.wordpress.com- Sugerido como Resposta Francisco Gonçalves segunda-feira, 31 de outubro de 2011 22:41
-
Francisco,
Eu dei um DataBind(), após o DataSource=null,
porém não adiantou.
O pageLoad está vazio, O grid só é carregado quando faço um filtro.
O Curioso é que os dados da nova consulta aparece, mas quando vou recuperar pelo e.CommandArgument.ToString(), ele retorna o
id da outra consulta.
Jacqueline Sabino -
-
Estou usando DevExpress.
Jacqueline Sabino- Marcado como Resposta Jack Sabino sexta-feira, 4 de novembro de 2011 18:29
-