Datakeys no evento rowcommand

12/05/2010

0

Olá Senhores   Bom , vamos lá. Tenho um gridview com paginação e com um botão . Esta gridview possui dois datakeysnames.   Ao clicar no botao , preciso pegar o valor da datakey e conforme o valor , redirecionar ou bloquear o acesso a outra página.   Problema >   Qdo estou na primeira página , tudo funciona ,mas somente na primeira. Qdo acesso a segunda página e clico no dito botão , onde dispara o evento rowcommand   ... String variavel =MinhaGrid.Datakeys[indice].Values[indice do datakey].toString() switch (variavel) case "Bloqueado" ....codigo     me retorna um erro dizendo que o indice esta fora do range... Mas , para debugar , eu exibo o valor do indice e está tudo ok... exemplo ,,,,qdo mudo para a segunda pagina a primeira linha me retorna indice "0" ,,isto é certo né? para capturar o indice da linha uso int indice - Convert.int32(e.commandarguments)     Bom ,não estou com o Visual Studio , portanto algum trecho do comando esteja errado , mas o problema não está no código e sim em alguma definição do indice..na hora do rowcommand...   Alguém pode me ajudar...Já perdi um tempinho...por isso estou postando..grato desde já  
Eiji

Eiji

Responder

Posts

12/05/2010

Pedro Maitan

  Uma forma de pegar o valor da linha é adicionando o valor no CommandArgument, Ficando assim.

LinkButton ID="LinkButton1"
          CommandName="Busca"
          CommandArgument=''
          runat="server"
Responder

12/05/2010

Pedro Maitan

    o código sumio

Responder

13/05/2010

Eiji

Olá , obrigado pela dica   Mas eu estou usando um command field no gridview , portanto não tenho como usar o command argument .Eu consigo resolver o problema , usando outros metodos , como por exemplo , no command databound , já estou mudanfo a cor do conteúdo da coluna que me mostra quais clientes estão bloqueados .Poderia fazer um if conforme a cor.   Mas gostaria de saber trabalha com este datakey. Pois parece ser simples ,mas não me traz valores qdo pagino . mesmo que eu coloque o valor do indice direto Ex.= if (e.CommandName == "Pedido") { //int ind = Convert.ToInt32(e.CommandArgument);   String situacao = GridBusca.DataKeys[0][1].ToString();  
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar