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?

As primeiras máquinas de fliperama do mundo a utilizarem moedas, chamadas de Galaxy Game, custavam mais de 20 mil dólares para serem produzidas. Saiba mais sobre elas aqui.


A partida mais longa do clássico Space Invaders durou incríveis 38 horas e 32 minutos e esta façanha foi conseguida por um jogador de apenas 12 anos! O jogo, claro, podia ser pausado para alimentação e descanso, mas ainda assim o recorde, estabelecido no dia 02/09/1980, ainda não foi quebrado. Saiba mais.


Criar um jogo é muito mais complexo do que parece. São milhares, às vezes, milhões de linhas de código. Isso não é exagero! Apenas o jogo Ultima Online possui 6.006.313 linhas de programação, totalizando 25.103.295 palavras


A empresa Take-Two pagou à Infogrames mais de 22 milhões de dólares pelos direitos de Civilization, em novembro de 1994. Ainda sobre este título, Sid Meier, um dos seus fundadores, é o profissional da área dos games mais premiado em todo o mundo.


Ao completar o nível 99 do jogo Duck Hunt, para Nintendo, o jogo retorna ao primeiro nível, mas um bug impede que se acerte os patos neste recomeço. Este é um exemplo do que é chamado no mundo dos games de "Kill Screen".