• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

saramgsilva

Listview com coluna Color - inserir item com respectiva cor (?)

5 mensagens neste tópico

Boas,

tenho um pequeno problema, estou a utilizar uma form com uma listview, apresento os dados...na boa sem problemas, e está tudo bem...mas agora ando a inventar fazer uma coisa!

Um das colunas chama-se Color, e apresenta os dados da seguinte forma

RGB(XXX,YYY,ZZZ); porque assim eu mandei e defini!

E eu gostava que para cada item, nessa coluna podesse apresentar o texto RGB(XXX,YYY,ZZZ) e de fundo a respectiva cor, ja tentei usar a propriedade  BackColor, mas não funciona!! :S alguem me podera dar sujestões?

Existe um evento engraçado:

ListView.DrawColumnHeader Event

mas ainda não tentei por ai!K dizem??

bom trabalho

tofas

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

boas,

eu começo por criar as colunas, e só depois insiro os items... tenho as cores de default da listview.

Pelo que andei a ver, acho que tenho k recorrer ao

ListView.DrawColumnHeader Event

de outra forma é complicado, pois eu nao kero k cada linha tenha a cor diferente, mas sim a coluna!

bom trabalho

tofas

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Hmm acho que não.

Acho que tens de por a cor no momento que crias o ListViewItem.

Depois tens uma propriedade, UseItemStyleForSubItems, que terás que por a falso, para cada coluna poder ter um estilo diferente, ou seja, para a linha toda não ser igual. Depois quando fores adicionar o subItem da coluna correspondente à cor, metes então a propriedade BackColor ou ForeColor como quiseres.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

boas,

obrigada!! Era mesmo isso que eu precisava ;)

   
               if(name =="color")
                {
                    Color color = Utils.ConvertRBGToColor(value);
                    subItem.ResetStyle();
                    if (color.GetBrightness() < 0.5)
                        subItem.ForeColor = Color.White;
                    else
                        subItem.ForeColor = Color.Black;
                    subItem.BackColor = color;
                }

bom trabalho

tofas

0

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