Hipervínculo de una dirección de correo electrónico mediante LinkLabel en C #
Pregunta
He hecho un cuadro sobre el que está destinado a permitir a los usuarios hacer clic en el hipervínculo dirección de correo electrónico que les llevará a un Microsoft Outlook para poder enviar un correo electrónico a la dirección de correo electrónico, pero no sé cómo enlace a Outlook y permite que el usuario haga clic en el enlace para hacer esto
Solución
Usted no está diciendo si está utilizando o Win-WebForms ... en WinForms Creo que se necesita para crear un controlador de eventos para el evento click. En el interior que se puede iniciar la aplicación de correo predeterminada escribiendo:
System.Diagnostics.Process.Start("mailto:youremail@xx.com");
Otros consejos
Comprobar este hilo SO:
Cómo enviar correo electrónico utilizando cliente de correo electrónico predeterminado?
Básicamente, el evento click sería algo como esto:
private void linkLabel1_LinkClicked(object sender,System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
System.Diagnostics.Process proc = new System.Diagnostics.Process();
proc.StartInfo.FileName = "mailto:someone@somewhere.com?subject=hello&body=love my body";
proc.Start();
}
Añadir un LinkLabel
como esto en el constructor de la forma:
linkLabel1.Links.Add(new LinkLabel.Link(0, linkLabel1.Text.Length, "mailto:bob@someaddress.com"));
A continuación, en el controlador de clic del LinkLabel
:
linkLabel1.Links[linkLabel1.Links.IndexOf(e.Link)].Visited = true;
string target = e.Link.LinkData as string;
System.Diagnostics.Process.Start(target);
<a href="mailto:bob@someaddress.com"></a>.
Si Outlook está instalado en la máquina del usuario que va a usar.
Editar:. Vaya simplemente se dio cuenta de que quería Winforms no web
Para winforms utilizan System.Diagnositcs.Process.Start(outlook.exe /c ipm.note /m bob@someadress.com)
en el controlador de eventos click.
Ponga una etiqueta de enlace en su forma.
Haga doble clic en la etiqueta de enlace para crear su controlador de clic en la continuación, poner el sistema en el llamado proceso de esta manera:
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
linkLabel1.LinkVisited = true;
System.Diagnostics.Process.Start("mailto:info@cybersprocket.com");
}
Eso hará disparar la aplicación de correo electrónico predeterminada que el usuario ha configurado en la caja de sus ventanas.
Reemplazar el mailto: con una referencia HTTP para abrir una página web en su navegador por defecto:
private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
linkLabel1.LinkVisited = true;
System.Diagnostics.Process.Start("http://www.cybersprocket.com");
}