Não muda nome de coluna em meu GridView

02/04/2013

1

Coloquei assim e diz que o índice está fora do intervalo. Como eu faço para editar o nome da coluna e não mostrar todas as colunas, apenas as que eu quero?

grid.Columns[0].HeaderText = "Código";
grid.Columns[1].HeaderText = "Ramo";
Responder

Posts

Boa tarde, sendo em c# desktop = eu faria o seguinte:
dataGridView1.Columns["Column1"].Visible = false; // tira visibilidade ou pelo nome da coluna ou pela posição
dataGridView1.Columns[2].HeaderText = "LLL"; // mudando o nome da coluna pela posição no caso.
Responder

02/04/2013

Pjava

Como eu falei, está dando erro.
Responder

03/04/2013

Robson Alves

Erro? Mensagem? Código!
Responder

10/04/2013

Pjava

O erro é:

O índice estava fora do intervalo. Ele deve ser não-negativo e menor que o tamanho da coleção.
Nome do parâmetro: index
Responder

10/04/2013

Joel Rodrigues

Essa discussão está sendo levada no seguinte tópico: [url]http://www.devmedia.com.br/forum/erro-de-indice-fora-do-intervalo/438948[/url]
Responder

10/04/2013

Pjava

Bem, achei melhor criar em Design Time os nomes da coluna. Então fui em Edit Column do grid e autogeratecolumn eu coloquei em false e acrescentei alguns BoundField. Bem agora eu preciso atribuir cada coluna criada a um campo da tabela que no meu caso eu tenho uma lista vinda do BD, já que uso Linq para isso. Como eu atribuo cada coluna dessa criada a um item da lista?
Responder

10/04/2013

Joel Rodrigues

As colunas possuem duas propriedades relevantes nesse caso: headertext e datafield. Preencha o datafield com o nome do campo que a coluna vai exibir.
Responder

10/04/2013

Pjava

Como eu não havia ligado a nenhum data source em design time, achei que colocar o nome daria erro. Mey erro foi não tentar. Fumncionou. O que eu não estou conseguindo é dar dois cliques e abrir uma webform com os controle de textbox e etc preenchidos com os valores vindo do grid, naquela posição.
Responder