Label e TextBox
O par Label/TextBox aparece junto com frequência, por isso decidi falar dos dois em um tópico só. A ferramenta Label insere um texto que vai rotular um objeto ou então instruir o usuário sobre o preenchimento de um formulário, por exemplo. É, talvez, o componente mais simples e básico de todo o Visual C#. Dando continuidade ao exemplo, vamos inserir um componente Label ao projeto, conforme a figura abaixo:
Vamos alterar a sua propriedade Text para “Selecione um gênero musical:”.
Ainda na janela de Propriedades, vamos expandir a opção Font e, em seguida alterar a opção "Bold" para "True", conforme a imagem abaixo:
Notem que imediatamente o texto já ficou em negrito e destacado em relação aos outros.
Como próximo passo vamos alterar a propriedade (Name) para labelGeneroMusical, conforme ilustra a imagem a seguir:
Apenas lembrando, o valor definido na propriedade (Name) é como o código C# localizará e manipulará esse objeto.
Feito isso, vamos inserir um Label instruindo o usuário sobre a seleção de sexo também. Sua propriedade (Name) será "labelSelecaoSexo".
Agora vamos criar um Label na parte superior e, logo abaixo dele, colocaremos um TextBox.
Para o Label vamos definir o (Name) como "labelNomeUsuario" e o texto como “Digite seu nome:”, e para o TextBox vamos definir o (Name) como "textBoxNomeUsuario".
A imagem acima mostra o TextBox já inserido e com seu nome alterado para "textBoxNomeUsuario". Para que ele ficasse maior eu simplesmente o redimensionei, da mesma maneira como faríamos com uma janela do Windows.
Agora, ao clicar no botão "Exibir Mensagem", além dos dados que já eram exibidos, vamos acrescentar o nome do usuário, que será digitado no TextBox.
A mudança no código será muito pequena, vejam:
Inseri, no início do bloco de comandos vinculados ao clique do botão, uma variável String que recebe o texto digitado no TextBox.
Ao final, no momento da exibição, apenas acrescentei essa variável às duas que já eram exibidas.
Agora vamos executar o código:
Aí está nosso pequeno aplicativo exibindo também o nome digitado no TextBox. Como eu havia dito no início que uma das vantagens de se utilizar o Label para instruir o usuário sobre o preenchimento de campos era poder efetuar uma alteração dinâmica no texto, vamos aprender como fazer isso agora. Imaginemos uma situação em que o preenchimento do campo nome seja obrigatório e, se o usuário não o preencher, mesmo selecionando as opções de gênero musical e sexo, elas não devem ser exibidas. Vejam como é simples:
Percebam que a lógica envolvida é muito simples: insiro em uma variável o conteúdo do TextBox e em seguida faço uma verificação para saber se ela está vazia. Se estiver, efetuo um desvio por grande parte do código, terminando-o em um bloco com uma caixa de mensagens e dois comandos para manipulação do Label.
Agora vamos executar a aplicação e vou clicar no botão "Exibir Mensagem" sem ter digitado um nome. Vejamos o que acontece:
Em uma primeira etapa foi exibida a mensagem de alerta e, ao clicar no botão de OK desta mensagem, o nosso Label, cujo nome é "labelNomeUsuario", mudará seu texto e sua cor:
O que acabou de ser feito aqui é a alteração dinâmica de conteúdo a que me referi no início. Suas possibilidades de uso são imensas. O importante a ser notado é que já é possível perceber um padrão para acesso às propriedades dos componentes. Devemos sempre chama-los pelos nomes que definimos em suas propriedades (Name) e em seguida modificar o valor da propriedade que nos interessa. O processo para manipular os botões era semelhante, os checkboxes também, enfim, isso valerá para todos os componentes. É muito simples!
No próximo tópico falarei sobre ComboBox e com isso encerraremos o primeiro bloco de ferramentas que prometi comentar.