2011-07-05 24 views
5

Mi objetivo es colocar mi aplicación en la barra de la bandeja, pero no sé cómo hacer eso para una aplicación WPF. (Para un WinForm hay un montón de documentos, pero no encuentro nada para WPF)Cómo puedo crear una aplicación en WPF que se ejecuta en segundo plano

Gracias

+0

¿La aplicación * solo * existe en la bandeja o también hay un componente en primer plano? – Matt

+0

Además, mira este enlace, puede responder a tu pregunta: http://stackoverflow.com/questions/995195/writing-a-windows-system-tray-application-with-net – Matt

+0

no, es una aplicación normal, pero yo ' me gustaría reducirlo – Orpheo

Respuesta

0

Después de probarlo, os recomiendo http://possemeeg.wordpress.com/2007/09/06/minimize-to-tray-icon-in-wpf/

Pero asegúrese de que su icono es una especie de “Embedded Ressource” no “Ressource” en propiedades en Visual Studio.

+0

Bienvenido a SO ! Si esta es su respuesta, probablemente quiera hacer clic en la marca de verificación a la izquierda para marcarla como completa :) – ewall

+0

Gracias :) (Tengo que esperar todavía 7 horas para validar mi propia respuesta ^^) – Orpheo

3

Usted podría utilizar this library para el icono de la bandeja, y para no tener ventanas debería quitar la StartupUri que pueden se definirá en la clase de la aplicación por defecto. Luego puede anular OnStartup para preparar cualquier lógica que su aplicación deba realizar.

No estoy seguro de si puede asignar TaskbarIcon de esta biblioteca directamente a la aplicación, ya que normalmente se usa en Windows. Pero puedes crear una ventana emergente ficticia para que aparezca.

public TaskbarIcon MyTaskbarIcon { get; set; } 

protected override void OnStartup(StartupEventArgs e) 
{ 
    base.OnStartup(e); 
    Popup pu = new Popup(); 
    pu.Child = MyTaskbarIcon; 
    //... 
} 

Si usted puede tener ventanas se puede crear un TaskbarIcon allí y entonces se puede llamar Hide() si necesita que desaparezca por completo.

Cuestiones relacionadas