¿Cómo hacer un TextBox que solo acepte números enteros o decimales en C# .net Windows Forms?

Para el caso de obligar a un TextBox en Windows forms para que solo acepte números, tenemos que agregar una funciona al textbox en su evento KeyPress. Esto lo podemos hacer dando clic en el control y en la pantalla de propiedades seleccionar el botón de eventos (el relámpago) y dar doble clic en el evento llamado KeyPress. Una vez que se asigna una función automática, ponemos el siguiente código:

private void MiTextBox_KeyPress(object sender, KeyPressEventArgs e)
{
         if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) )
         {
             e.Handled = true;
         }
}

Con eso bastara para obligar a tu control a no permitir letras ni otros caracteres que no sean números.

Podemos hacer lo mismo para números con decimales, pegando el siguiente código.

private void MiTextBox_KeyPress(object sender, KeyPressEventArgs e)
{
          if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar) && (e.KeyChar != '.'))
          {
                e.Handled = true;
          }

            // solo 1 punto decimal
            if ((e.KeyChar == '.') && ((sender as TextBox).Text.IndexOf('.') > -1))
          {
                e.Handled = true;
          }
}

Mediator en C# .Net, Patrones de diseño, design patterns #6

En este video te explicare el patrón de diseño mediator o mediador, un patrón de diseño de tipo comportamiento con el cual puedes administrar los mensajes entre los objetos de tus sistemas.

Código fuente: descargar

Programación en paralelo con la clase Parallel y su método ForEach en C#.Net y C# .Net Core

En este video te explicare como puedes incorporar la clase Parallel para trabajar procesos que sean tardados de forma paralela.

Recorreremos una lista de nombres de archivos por medio del método ForEach de Parallel y copiaremos estos archivos a una segunda carpeta.

¿Cómo enviar un correo electrónico con archivos adjuntos en C# .Net Core?, Gmail

En este video te mostrare como puedes enviar archivos adjuntos en C# .Net, utilizando una cuenta de gmail.

Activar cuenta gmail para aplicaciones terceras

Código fuente:


using System;
using System.Net.Mail;


namespace EmailAdjunto
{
    class Program
    {
        static void Main(string[] args)
        {
            string EmailOrigen = "tumail@gmail.com";
            string EmailDestino = "maildestino@gmail.com";
            string Contraseña = "tu_pass";
            string path = @"C:\turuta\burger.png";
            string path2 = @"C:\turuta\a.jpg";

            MailMessage oMailMessage = new MailMessage(EmailOrigen,EmailDestino,"este es un asunto","<b>soy texto negro</b>");
            oMailMessage.Attachments.Add(new Attachment(path));
            oMailMessage.Attachments.Add(new Attachment(path2));

            oMailMessage.IsBodyHtml = true;

            SmtpClient oSmtpCliente = new SmtpClient("smtp.gmail.com");
            oSmtpCliente.EnableSsl = true;
            oSmtpCliente.UseDefaultCredentials = false;
            oSmtpCliente.Port = 587;
            oSmtpCliente.Credentials = new System.Net.NetworkCredential(EmailOrigen,Contraseña);

            oSmtpCliente.Send(oMailMessage);

            oSmtpCliente.Dispose();


        }
    }
}


Salir de la versión móvil