Ir para o conteúdo
electric

[Resolvido] DataGridView row dentro de row e cor

Mensagens Recomendadas

electric

Boa noite,

stou noutra fase do meu projecto ( ainda falta tanto xD )

O que preciso fazer neste caso especifico, é

receber uma linha com varios dados ( ja esta feito ) e conforme um dos dados recebido a linha fica toda de uma cor...

ou seja tenho um dos dados que vai ser escrido com L ou B tenho esses dados a serem colocados numa listbox e realmente consigo colocar a cor da letra a ser mudada ( L = red B = blue ) consoante a letra, no entanto queria mesmo preencher o espaço todo, como que marcado por marcador!

entao pensei vou fazer isso com uma DataGridView ainda nao a tenho criada nem peenchida, mas salvo erro ja me tinham dito que ha maneira mas nao me diseram como ...

posso ter genero de 2 celulas dentro de uma so ?

----------------

| |

|_________|

| |

| |

----------------

en que no fundo tenho duas celulas dentro de uma cada uma delas com valores diferentes....

Desde ja agradeço a ajuda.

cumprimentos

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
jlpcalado

Olá Electric.

Não podes meter 2 células numa só. Se o que pretendes é dar um efeito visual na grid de modo que não apareça a linha divisória entre 2 células podes utilizar o código seguinte:

Private Sub dg_CellPainting(sender As Object, e As System.Windows.Forms.DataGridViewCellPaintingEventArgs) Handles dg.CellPainting
 If (e.RowIndex Mod 2 = 0) Then
	 e.AdvancedBorderStyle.Bottom = DataGridViewAdvancedCellBorderStyle.None
	 'e.CellStyle.BackColor = Color.Red
 Else
	 e.AdvancedBorderStyle.Bottom = DataGridViewAdvancedCellBorderStyle.Single
	 'e.CellStyle.BackColor = Color.Blue
 End If
End Sub

Se tirares os comentários a row terá como fundo a cor respetiva. No teu caso terás que fazer condições...

Se queres dominar completamente tudo o que tenha a ver com datagridviews consulta este link:

http://devolutions.net/articles/dot-net/DataGridView-FAQ.aspx

Editado por apocsantos
geshi

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
electric

Obrigado a ambos :)

O que pretendo mesmo seria 2 resultados na mesma celula mas dispostos 1 sobre o outro...

Vou ler ao maximo o artigo que me deixaste Jlpcalado

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
electric

em :D fiquei feliz lol

Realmente nao se consegue ter 2 cellulas dentro da mesma... mas consegui meter 2 valores na mesma celula... so que fiava tudo seguido...

entao pensei, pera nao precisas ter 2 celulas uma para cada valor ! e se conseguires meter 1 celula 2 valores mas a serem divididos... entao ao fim de 2 dias xD tenho muito poucop tempo para fazer isto infelizmente! ca arranjei solução que deixo aqui para futuras duvidas :D

1º colocar a largura da celula num X valor

2º - colocar o wartmode em true, para que quando o valor da celula for maior passe para a linha de baixo exemplo:

DefaultCellStyle.WrapMode = DataGridViewTriState.True

Bem agora temos realmente algo bonito mas nao esta dividido onde queremos!

entao segue o codigo que para mim é o milagre xD

3 - codigo que divide 2 valores em 2 linhas

... & Environment.NewLine & ...

Pronto :D comigo funcionou, e se estiver a dizer algo errado agradeço que corrijam :D

Abraços e obrigado

Partilhar esta mensagem


Ligação 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. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.