Problema com GridView No servidor de produção

29/07/2011

0

Ola , Estou com um problema na gridview somente no servidor de produçao. Quando executo em minha maquina funciona corretamente. Eu populo uma gridview via codigo conforme abaixo: Evento click de um botao. aqui faço uma query  Session("sql") = "select a.idagenda,c.nometarefa,a.descricao,b.nome,d.dataabertura,d.datafim  from sigla.agenda...."                     aqui eu passo para o datasource q esta associado ao grid, a query criada acima.   SqlDataSource1.SelectCommand = Session("sql")
                SqlDataSource1.DataBind()                 GridView1.DataBind() Coloquei a grid para habilitar seleção. e no evento GridView1_SelectedIndexChanged faço o codigo abaixo. Dim row As String = GridView1.SelectedRow.Cells(1).Text Fazendo isso em minha maquina funcionou corretamente, a row recebe um numero qualquer . Quando executo no servidor de produçao ocorre o erro a seguir Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index É como se nao existisse aquela coluna, so que aparece na grid td certinho, a linha e o botão para selecionar e quando clico da este erro. Ja tentei de td, peço a ajuda de vcs para me ajudar a resolver este problema. Sds,
Carlos Andre

Carlos Andre

Responder

Posts

30/07/2011

Hernane Goncalves

Voce precisa colocar o DataKeyNames no gridview. caso tenha colocado, verifique a sua tabela no banco, e veja se sua coluna de identificação (ID), está configurada corretamente.   pois ele nao esta conseguindo pegar o ID da linha quando voce clica no select.   pois o select, antes de selecionar a linha no gridview, ele capitura a ID da coluna através do DataKeyNames
Responder

01/08/2011

Carlos Andre

Ola hernane,
coloquei um datakeyname e fiz deste jeito txtagenda.Text = GridView1.SelectedDataKey(0).Text
e da este problema :
Object reference not set to an instance of an object.
O estranho eh q se eu passar o sql sem ser via codigo para o datasource funciona, mas quando passo o sql via codigo mostra as linhas mas nao pega nada do campo.


Responder

01/08/2011

Hernane Goncalves

Vamos a mais detalhes, quando voce colocar o datakeyname   adicione o evendo SelectedIndexChanged no seu GridView, dentro dele e crie uma valiável que vai pegar o ID assim que voce clicar no select.   lembrando que voce terá que ter um botão com o Command "Select" para clicar, pois quando voce clicar nele, ele aciona o evento que segue abaixo.     o seu código terá que ficar como segue o modelo abaixo.     protected void GridView1_SelectedIndexChanged(object sender, EventArgs e) { Int IDAlbumIMG = (Int32)GridView1.SelectedDataKey.Value;   txtagenda.Text = IDAlbumIMG.TotString();   // Nesse exemplo eu estou usando uma Indentificacão de numeros Inteiros, ae voce coloca a que voce esta usando ai       }   dessa forma ele vai enviar a ID para seu txtagenda.Text, Lembrando que seu txtagenda.Text nao pode estar dentor do GridView ou dentro de qualquer outro controle, pois dessa forma Utilizaremos o Evendo   RowDataBound   qualque duvida posta todo o seu código aqui
Responder

01/08/2011

Carlos Andre

Ola Hernane,
Descobri o problema, estava dando problema pq estava utilizando uma image na gridview para selecionar. Troquei de image para link e funcionou corretamente. Nao sei se eh bug ou outra coisa. Queria que ficasse com image, estava mais bonito mas se so funciona link entao usarei link msm.
Sabe pq isso ocorre?
sds,
Responder

03/08/2011

Hernane Goncalves

utilize dessa forma     <hyperlink id="" navigateurl="">  <image id="" imgeurl=""></image>  </hyperlink>     coloca a umagem dentro do link, pois dessa forma voce tem o link que vai torna seu botao funcional e com a imagem que voce quiser
Responder

03/08/2011

Hernane Goncalves

utilize dessa forma     <hyperlink id="" navigateurl="">  <image id="" imgeurl=""></image>  </hyperlink>     coloca a umagem dentro do link, pois dessa forma voce tem o link que vai torna seu botao funcional e com a imagem que voce quiser
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