ago 3 2008

DataGridViewComboBoxCell Value is not Valid no VB

  • Autor: admin em Programação
  • Sem Comentários. Seja o primeiro a comentar.
Geralmente ocorre no fechamento do formulário, aparecendo muitas vezes.

O erro acontece se o autosizemode de uma coluna do tipo datagridviewcombobox estiver definido. Se o autosizemode não for definido, o erro não acontece.

Levando a duas situações :

O erro pode acontecer quando o autosizemode está definido a nível da DataGridView e existe uma coluna do tipo ComboBox na GridView.

O erro pode acontecer quando o autosizemode está definido a nível de coluna e foi definido na coluna do tipo ComboBox.

O erro ocorre porque no momento do fechamento do formulário, o formulário realiza primeiro o dispose do datasource da coluna ComboBox. Quando o datasource é destruído e o autosize está definido, a ComboBox precisa recalcular o tamanho, então faz uma requisição por um dado que não existe mais.

Sem dúvida que desligar o autoSizeMode é uma alternativa, mas isso não é viável, precisamos do autoSize.

No momento em que o formulário for fazer o dispose do datasource da comboboxColumn, a ComboBoxColumn precisa estar com o autosizemode definido como None.

Lembrando que o autosizemode pode ser também definido no nível da grid, aí que vem a diferença entre definir o autoSizeMode como None ou como NotSet

Então no evento form_Closed podemos simplesmente alterar o autosizemode da comboboxcolumn e assim poder utilizar o autoSize que o erro desaparecerá.

Cada coluna DataGridView possuí um nome e uma variável acessível por código. Ficando assim :

1: Private Sub Form1_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed

2: NomeDaColuna.AutoSizeMode =DataGridViewAutoSizeColumnMode.None

3: End Sub

Bufalo.net



DEIXE UM COMENTÁRIO

Subscrever

Subscreve o Blog



Publicidade

Comentários Recentes

  • shirley Balazs: Parabéns!! Informações de utilidade publica e de primeira, foi muito útil a mim.Obrigada!!
  • Jefferson Ferreira de brito: eu quero muito
  • thiago valente: Eu quero um para mim
  • Lucas martins balieiro: Eu não fiz o enem mesmo assim eu posso me inscrever no site essa é minha dúvida, só queme...
  • Francisca Marli Oliveira: quero saber quanto tenho no meu fgts

Links

Leitores Recentes

VALE O CLIQUE!

Site Seguro Ocioso

Divulgue o blog Infomaroto em seu site e tenha seu link ou banner aqui.
Blog Infomaroto