Ir para o conteúdo
Luis Marques

Erro ao clicar em dadagridview

Mensagens Recomendadas

Luis Marques    0
Luis Marques

boas, é assim pessoal tou com um problema na datagridview, que é o seguinte:

Ao fazer duplo click num registo que tenha na datagrid, dame erro, isto acontece quando se clica "mal", ou seja entre 2 registos. Alguem sabe uma solução para este problema, é que tenho de entregar a pap para a semana, e assim nao posso entregar, e tenho de trocar tudo para listview, mas como tenho muitas datagridvie:S

Nao sei se me expliquei bem de maneira a que me entendam.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Weasel    3
Weasel

Explica melhor como se está a originar o erro, e se calhar era boa ideia mostrar o bloco de código onde se está a originar o erro.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Luis Marques    0
Luis Marques

Eu tenho datagris com o evento, doublecellclick, onde uso para clicar numa linha da datagrid e enviar o que la está para outra form,etc.

E se clico por exemplo entre a 2 linhas da datagrid , dá erro. eu ja coloco aqui codigo onde dá erro.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Weasel    3
Weasel

Na variável aux estás a guardar o valor da coluna 0 da linha seleccionada certo?

Experimenta fazer assim:

aux = DataGridView1.Item(0, e.RowIndex).Value

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Luis Marques    0
Luis Marques

Weasel a partida já esta tudo ok, mas se der algum erro digo, vou agora testar nos outros sitios que estava a dar erro!;)

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Weasel    3
Weasel

Simples, nas propriedades da DatagriView tens a Propriedade: CollumHeadersVisible isto é para o nome das colunas aparecer e também tens para as linhas com o RowHeadersVisible, definindo como True ou False

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Luis Marques    0
Luis Marques

o que ando a procura e de saber como se bloqueia as linhas da tabela, para durante a execuçao do programa ao der para puxar as linhas para cima e para baixo, para um lado e para o outro

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Weasel    3
Weasel

Ainda nas Propriedades da dataGridView tens estas propriedades basta meter True/False

  • AllowUserToOrderCollumns
  • AllowUserToResizeColumns
  • AllowUserToResizeRows

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Luis Marques    0
Luis Marques

Já agora só mais uma questao, como defino a largura das colunas? ja andei a procura nas propriedades e nao encontro.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Luis Marques    0
Luis Marques

eu assim sei, só que neste caso tenho a datagridview feita em codigo, vou te mostrar o codigo.

' CRIAÇÃO DE COLUNAS NO DATAGRIDVIEW

        DataGridView1.RowHeadersVisible = False

        Dim num_campos As Integer

        Dim campo As String

        DataGridView1.Columns.Clear()

        num_campos = dtr.FieldCount

        For idx = 0 To num_campos - 1

            campo = dtr.GetName(idx)

            DataGridView1.Columns.Add(campo, campo)

        Next

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Luis Marques    0
Luis Marques

Tive agora a criar a datagrid sem ser por codigo, e defeni a largura das colunas, mas esta como autosize em qualquer lado e nao sei onde.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Weasel    3
Weasel

Por código seria assim:

' CRIAÇÃO DE COLUNAS NO DATAGRIDVIEW

        DataGridView1.RowHeadersVisible = False

        Dim num_campos As Integer

        Dim campo As String

        DataGridView1.Columns.Clear()

        num_campos = dtr.FieldCount

        For idx = 0 To num_campos - 1

            campo = dtr.GetName(idx)

            DataGridView1.Columns.Add(campo, campo)

            DataGridView1.Columns.Item(idx).Width = 200  'Aqui defines a largura da coluna...

        Next

Edit:

Tive agora a criar a datagrid sem ser por codigo, e defeni a largura das colunas, mas esta como autosize em qualquer lado e nao sei onde.

Em modo visual penso que seja a propriedade AutoSizeColumnsMode isto nas propriedades da DataGrisView1 mas indo à Collection de Columns também tens isso idividualmente para cada Column na parte do Layout.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Luis Marques    0
Luis Marques

Mas eu queria tirar a barra la com o nome das colunas, tirei nas propriedades com o Column Headers Visible = false, mas assim dá barraca, porque as colunas ficam com autosize:S

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
Luis Marques    0
Luis Marques

Assim resulta, consegues me dizer como faço para definir a largura para cada coluna? ali disseste, mas é para todas as colunas, ja tive a tentar colocar para cada coluna o tamanho ser diferente, mas nao consegui, sabes como se faz?

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade