Fernanda Sallai

Blog de desenvolvimento e negócios.

C# - Declarando variáveis value types

No post .Net Framework - Variáveis Value types entendemos o que são variáveis value types.

Agora vamos aprender como declará-las em C#.

  • Built-in

OBS: O construtor define como valor padrão null ou 0. Recomenda-se sempre informar um valor inicial conforme exibido acima.

  • User-defined

        //pessoa é o nome da estrutura
        public struct pessoa
        {
            //propriedade nome
            public string nome { get; set; }
           
           //propriedade idade
            public int idade { get; set; }
        }

    OBS: o struct poderá ser convertido facilmente de value type para reference type alterando a palavra struct para class, assim possuirá a mesma estrutura de uma classe com: construtores, métodos, etc.

  • Enumerations
        //tipoPessoa é o nome da enumeração
        public enum tipoPessoa
        {
            fisica,
            juridica
        }

OBS: Se criar o enum como a estrutura acima, os valores padrões definidos serão fisica = 0, jurídica = 1 e assim por diante. Se desejar definir seus valores será necessário criar um enum informando o valor desejado para cada item conforme a seguir:

        //tipoPessoa é o nome da enumeração
        public enum tipoPessoa
        {
            fisica = 2,
            juridica = 5
        }

Pronto! Finalizamos mais este post.

Espero que tenham gostado.

Até o próximo :)

Cursos de férias

Pessoal,

Estão abertas as matrículas para os cursos da IMEJR-USP.

Atualmente, oferem três cursos relacionados a plataforma .NET:

* C# e Orientação a Objetos - 40h
* Desenvolvimento web com ASP.NET MVC - 40h
* Laboratório de ASP.NET MVC avançado - 24h

Para obter mais informações sobre valores, datas e horários entre em contato através do site www.ime.usp.br/imejr.

Bons estudos...

Windows Forms - Carregar impressoras instaladas

Neste post iremos aprender como carregar o nome de todas as impressoras que estão instaladas na nossa máquina em um ComboBox.

Vamos lá ?!

Crie um formulário e inclua um ComboBox com o nome ddlImpressora  (veja o exemplo na figura 1 - claro você pode criar o layout do jeito que preferir).

Figura 1 : Formulário de seleção de impressoras.

No evento Load do formulário inclua o seguinte código:

ddlImpressora.Items.Insert(0, "SELECIONE");

foreach (string nomeImpressora in PrinterSettings.InstalledPrinters)
{
     ddlImpressora.Items.Add(nomeImpressora.ToUpper());
}

ddlImpressora.SelectedIndex = 0;

Para finalizar será necessário incluir o namespace referente a classe PrinterSettings:

using System.Drawing.Printing;

Viu como é simples! Agora é só ver o resultado final (figura 2).

Figura 2: Exibindo as impressoras instaladas na máquina.

Até a próxima ...

C# - Deslocar o ponteiro numa dataGridView

No sistema que estou desenvolvendo para o TCC, possui uma tela para listar os clientes ativos  num datagridview conforme abaixo:

Para abrir o formulário de visualização e ou alteração de um cliente basta selecioná-lo (conforme imagem a seguir) :

Após visualizar e ou alterar os dados do cliente, ao voltar para a tela de listagem de cliente, a linha do cliente escolhido deverá voltar selecionado como abaixo:

Porém o cursor está na primeira linha do datagridview....

Vamos resolver isso ?!

datagridview.celulacorrente = datagridview.linhas[linhaselecionada].celulas[0];

dgvClientes.CurrentCell = dgvClientes.Rows[i].Cells[0];

Agora o cursor fica na linha que está selecionada:

Espero que isso tenha ajudado...

Até a próxima...

C# - Usando expressões regulares para validar formato de email e cep

Pessoal,

Nas telas de cadastro, além de validações de campos obrigatórios, tive que verificar se o cep e o email informado tinha o formato correto. Para isso usei as expressões regulares.

Mas o que são expressões regulares ? !

Conforme Aurélio Marinho Jargas  "É uma composição de símbolos, caracteres com funções especiais, que, agrupados entre si e com caracteres literais, formam uma sequência, uma expressão. Está expressão é interpretada como uma regra, que indicará sucesso se uma entrada de dados qualquer casar com essa regra, ou seja, obedecer exatamente a todas as suas condições.";

Como fazer ?!

No botão salvar existe um método de validação dos campos. Se todas as validações forem realizadas com sucesso é chamado método de inclusão, se não é exibida a mensagem informando que o campo obrigatório não foi preenchido ou foi preenchido incorretamente. 

Vamos ao método de validação ...

private bool ValidarCampos()
{
    bool camposPreenchidos = true;
 
    if (txtCep.Text == string.Empty)
    {
        mensagem = "Informe o cep do cliente.";
        camposPreenchidos = false;
        txtCep.Focus();
        return camposPreenchidos;
    }
    else
    {
        if (!ValidaCep(txtCep.Text))
        {
            camposPreenchidos = false;
            mensagem = "O CEP informado é inválido. Por favor verifique.";
            txtCep.Focus();
            return camposPreenchidos;
        }
    }

    if (txtEmail.Text != string.Empty)
    {
         if (!IsValidEmail(txtEmail.Text))
        {
            camposPreenchidos = false;
            mensagem = "O e-mail informado é inválido. Por favor verifique.";
            txtEmail.Focus();
            return camposPreenchidos;
        }
    }

    return camposPreenchidos;

private bool ValidaCep(string cep)
{
    if (cep.Length == 8)
    {
        cep = cep.Substring(0, 5) + "-" + cep.Substring(5, 3);
        txtCep.Text = cep;
    }
    return System.Text.RegularExpressions.Regex.IsMatch(cep, ("[0-9]{5}-[0-9]{3}"));
}

private bool IsValidEmail(string email)     
{
    return System.Text.RegularExpressions.Regex.IsMatch(email, ("(?<user>[^@]+)@(?<host>.+)"));
}

Até o próximo post....

Qualquer dúvida entre em contato comigo.....

 

C# - Enviando email

Todos nós sabemos da importância de permitir que você se comunique com as pessoas que acessam o seu site. Por isto, irei demonstrar de maneira simples o envio de emails utilizando C#.

Vamos começar !

Web.config

//Incluir uma chave chamada emailFrom contendo o email do remetente dentro da tag appSettings:
<appSettings>
    <add key="emailFrom" value="emailRemetente"/>
</appSettings>

<system.net>
    <mailSettings>
           <smtp>
          //Incluir no host o smtp, no userName o endereço de email do remetente e no password a senha do email do remetente: 
              <network host="smtpEmail" port="25" userName="emailRemetente" password="senhaEmailRemetente"/>
         </smtp>
     </mailSettings>
</system.net>

Classe email

Criar uma classe que irá conter os dados abaixo:

//Incluir o namespace:
using System.Net.Mail;


/// <summary>
/// Método para enviar email
/// </summary>
/// <param name="mailAddressTo">
Endereço de email do Remetente</param> 

 public static void SendEmail(string mailAddressTo)
{
      //Cria o objeto que envia o e-mail 
     SmtpClient client = new SmtpClient();
     //Cria o endereço de email do remetente 
     MailAddress from = new MailAddress(ConfigurationSettings.AppSettings["EmailFrom"]);
     //Cria o endereço de email do destinatário -->
     MailAddress to = new MailAddress(mailAddressTo);

      MailMessage message = new MailMessage(from, to);
      message.IsBodyHtml = true;
    
      //Assunto do email 
      message.Subject = "Assunto do email";
      //Conteúdo do email 
      message.Body = "Conteúdo do email";

      try
      {
           //Envia o email 
           client.Send(message);
      }
      catch
      {
      }
}

Para finalizar basta chamar o método no cs da página que utilizará  para enviar o email:

//Nome da classe.Nome do método(endereço do email do destinatário) 

Mail.SendEmail(mailAddressTo);

Sobre mim...

Olá… Meu nome é Fernanda Sallai. Bacharel em Sistemas de Informação e atuo na área de desenvolvimento.

Colaboradora do Portal Linha de Código e editora da revista Codificando.Net.

Estou sempre em busca de novos conhecimentos e espero compartilhá-los aqui no blog.

Obrigada pela visita e bons estudos.