O C# possui um componente interessante e que permite que o usuário selecione cores através de uma paleta, para que estas sejam utilizadas em diversos componentes dos formulários, como botões, backgrounds, labels, etc. Trata-se do ColorDialog. Arrastando-o para um formulário ele se posicionará no rodapé do projeto, conforme ilustra a imagem abaixo:

Criando métodos setters e getters

 

Para demonstrar suas funções básicas, adicionei os seguintes componentes ao formulário:

 

Criando métodos setters e getters

 

Adicionei comandos para exibir a paleta de cores quando o botão for pressionado, da seguinte forma:

ColorDialog cdlPaleta = new ColorDialog();
cdlPaleta.ShowDialog();

 

Agora, ao pressionar o botão, surge a paleta para seleção de cores:

 

Criando métodos setters e getters

 

Precisamos, então, capturar a cor selecionada pelo usuário para aplicá-la aos componentes. Isso pode ser feito da seguinte maneira:

 

private void btnExibir_Click(object sender, EventArgs e)
{
ColorDialog cdlPaleta = new ColorDialog();
cdlPaleta.ShowDialog();

if (cdlPaleta.ShowDialog() == DialogResult.OK)
{
textBox1.ForeColor = cdlPaleta.Color;
}
}

 

Notem que eu atribuí, para a propriedade ForeColor do textBox1, a propriedade Color do ColorDialog. O resultado é:

 

Criando métodos setters e getters

 

O texto está em azul!
Vejam outros exemplos:

this.BackColor = cdlPaleta.Color;

Resulta em:

 

Criando métodos setters e getters

 

Alterando a cor do Label:
label1.ForeColor = cdlPaleta.Color;

 

Criando métodos setters e getters

 

Alterando as cores do botão:

button1.BackColor = Altera a cor de fundo do botão
button1.ForeColor = Altera a cor do texto do botão

 

Criando métodos setters e getters

 

Conforme foi demonstrado, o componente ColorDialog nos permite manipular cores de diversos objetos do formulário.


Outras dicas de C#


Adicionando colunas a um dataset

Capturando a linha clicada em um Gridview

Chamando função C# a partir do Javascript

Como chamar função "alert" a partir do C#

Criando rapidamente os métodos Setters e Getters

Deixando o Visual Studio 2010 em Português

Entendendo o operador ternário

Enviando e-mails com C#

Invertendo uma string

Percorrendo as linhas de um DataSet

Percorrendo todos os textboxes do formulário - Windows Application

Permitindo que o usuário altere cores dos componentes

Posicionando o cursor no início de um Stream

Redirecionando para a parent window

Removendo acentos de string

Removendo todas as tags HTML de um texto

Simulando um clique em um elemento através de jQuery

Trabalhando com o método String.Format

Verificando se um número é par ou ímpar

Verificando se uma conexão está aberta

Verificando se uma variável string é nula ou vazia

Verificando se uma variável string é nula, vazia ou composta somente por espaços

Você Sabia?

O console Nintendo Entertainment System (NES), da Nintendo, detém o recorde de videogame mais clonado em todo o mundo. Já foram catalogados mais de 300 aparelhos diferentes capazes de reproduzir seus jogos! Saiba mais sobre ele aqui.


O ENIAC, primeiro computador valvulado do mundo, possuía 17.000 válvulas, 500.000 pontos de solda, 30 toneladas de peso e ocupava uma área de 180 metros quadrados. Clique aqui e conheça mais sobre a história dos computadores.


Considerando todas as adaptações de jogos de videogame para o cinema, a mais bem sucedida foi Lara Croft: Tomb Raider, lançado em 2001 e que faturou 274 milhões de dólares. Ele foi dirigido por Simon West e estrelado pela bela Angelina Jolie.


A primeira versão do clássico Mega Man, para Nintendo 8 bits, tem seu recorde de pontos estabelecido em 03/11/2006, por David Archey, que cravou 2.396.700 pontos, terminando o jogo.


A IBM detém o recorde de patentes em um único ano, atingindo a marca de 4186 registros no ano de 2008. Clique aqui e saiba mais sobre esta gigante do mundo da tecnologia.