Visual – PasswordChar, ImeMode, MessageBox – Aspas Simples e Aspas Duplas – C#

Publicado: 2 de abril de 2014 em C#

Em C# para usar um campo para senhas basta usar um TextBox padrão, alterando sua propriedade PasswordChar. Quando a caixa de texto está no modo de senha porque PasswordChar, UseSystemPasswordChar ou se ReadOnly for verdadeiro, o TextBox está no modo restrito. Neste modo, o ImeMode está desativado, mas o ImeMode atual é armazenado em cache para que ele possa ser restaurado se o TextBox nunca se tornar irrestrito.

ImeMode

Siginifica Input Method Editor, o modo permite aos usuários inserir caracteres e símbolos complexos, tais como mostrar caracteres “*”, usando um teclado padrão.

MessageBox

Exibe uma caixa de mensagem que pode conter texto, botões e símbolos que informam e instruem o usuário.

Aspas Simples e Aspas Duplas

Em algumas linguagens de programação usa-se aspas simples para escrever textos literais para uma variável, outras linguagens usam aspas duplas. Em algumas linguagens modernas usa-se ambos os tipos de aspas. Em C# aspas duplas significam caracteres literais no formato String, aspas simples significam caracteres literais no formato Char. No exemplo abaixo o caractere de senha precisa ser do tipo Char, tente colocar os caracteres em aspas duplas e verá o erro: String e Char não são tipos compatíveis, aspas simples transformam os literais em tipos Char suprimindo o erro do compilador.

password

Senha

 

Exemplo:

Neste exemplos usamos uma caixa de texto com sua propriedade de senha ativada e exibimos mensagens ao usuário de acordo com o resultado de validação.

C#

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace senha
{
    public partial class Form1 : Form
    {
        // Declara componentes
        Label rotulo;
        TextBox senha;
        Button botao;

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Shown(object sender, EventArgs e)
        {

            // Cria componentes
            rotulo = new Label();
            senha = new TextBox();
            botao = new Button();

            // Adiciona Componentes
            this.Text = "DA - Password";
            rotulo.Text= "Digite uma senha de 8 caracteres";
            botao.Text="Ok";

            // Adiciona tamanho dos componentes
            rotulo.Size = new Size(300, 20);
            this.Size = new Size(250, 150);

            // Adiciona posição dos componentes
            rotulo.Location = new Point(15, 20);
            senha.Location = new Point(15, 45);
            botao.Location = new Point(15, 70);

            // Adiciona componente no formulario
            this.Controls.Add(rotulo);
            this.Controls.Add(senha);
            this.Controls.Add(botao);

            // Cria evento do botão
            botao.Click += new System.EventHandler(this.botao_Click);

            // Altera propriedades para usar senhas
            senha.MaxLength = 8;
            senha.PasswordChar = '*';

        }

        private void botao_Click(object sender, EventArgs e)
        {
            // Exibe menssagens
            if (verificaSenha(senha.Text))
            {
                MessageBox.Show("A Senha está correta!", "Menssagem",
                                 MessageBoxButtons.OKCancel, MessageBoxIcon.Asterisk);

            }
            else
            {
                MessageBox.Show("A Senha está incorreta!", "Menssagem",
                                 MessageBoxButtons.OKCancel, MessageBoxIcon.Asterisk);
            }
        }

        public Boolean verificaSenha(string  senha)
        {
            // Verifica Senha
            Boolean correto = true;

            // Retorna senha de alguma fonte
            string rsenha = "daaberto";

            // Verifica tamanho da senha
            if (senha.Length != rsenha.Length)
            {
                correto = false;
            }
            else
            {
                // Verifica senha
                if (senha != rsenha)
                {
                    correto = false;
                }
            }

            return correto;
        }

    }
}

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s