2011-06-11 13 views
24

Quiero minimizar una aplicación C# WinForms a la bandeja del sistema. Intenté esto:¿Cómo minimizo una aplicación WinForms en el área de notificación?

Having the application minimize to the system tray when button is clicked?. La primera vez que lo minimizo, no aparece en ninguna parte de la pantalla: barra de tareas/barra de tareas/bandeja anterior.

Si toco la pestaña alt, puedo ver mi aplicación allí; si Alt pestaña en ella y minimizar de nuevo, se muestra por encima de la barra de tareas:

minimize

¿Qué estoy haciendo mal?

Respuesta

34

¿Qué pasa con la opción de ocultar el formulario cuando se minimiza y luego se muestra una vez que hace clic en el icono de la bandeja?

En el evento de formulario de cambio de tamaño, haga el cheque allí y ocultar el formulario

private void Form_Resize(object sender, EventArgs e) 
    { 
     if (WindowState == FormWindowState.Minimized) 
     { 
      this.Hide(); 
     } 
    } 

A continuación, al hacer clic en el icono de la barra de tareas simplemente restaurarlo.

private void notifyIcon_Click(object sender, EventArgs e) 
    { 
     this.Show(); 
     this.WindowState = FormWindowState.Normal; 
    } 
+0

Esto es exactamente lo que estaba buscando. Gracias – CodeLikeBeaker

9

Debe agregar un NotifyIcon a su formulario. A continuación, puede utilizar el evento Click de NotifyIcon para que establezca la propiedad Visible en su Form en true nuevamente.

3

Debe agregar un icono en NotifyIcon para que sea visible.

0

Tienes que establecer la propiedad ShowInTaskbar = true de tu Formulario. Se minimiza automáticamente en la barra de tareas.

Cuestiones relacionadas