2011-06-09 17 views
6

¿Cómo puedo estar seguro de que la vista previa hower de mi aplicación WPF (.net 4) se actualiza cuando el usuario coloca el puntero del ratón sobre el icono de la barra de tareas.
Tengo una aplicación que visualiza algunos valores de estado. Si la ventana de la aplicación se minimiza y el usuario se desplaza sobre el botón de la barra de tareas, la ventana de vista previa que se muestra muestra la última vista de la ventana en la que estaba activa la ventana. Sin embargo, me gustaría tener una vista actualizada.
¿Hay alguna posibilidad de lograrlo?Asegúrese de WPF barra de tareas ventana de vista previa se actualiza

Respuesta

6

creo que había necesidad de personalizar la vista previa, como se describe here (bajo la sección Personalizar vista previa). Que aprovecha el Windows API Code Pack for Microsoft® .NET Framework.

Un ejemplo se puede encontrar here, pero es así:

TabbedThumbnail preview = new TabbedThumbnail(parentForm.Handle, childForm.Handle); 
TaskbarManager.Instance.TabbedThumbnail.AddThumbnailPreview(preview); 
preview.TabbedThumbnailBitmapRequested += (o, e) => 
    { 
     Bitmap bmp = new Bitmap(width, height); 

     // draw custom bitmap... 

     e.SetImage(bmp); 
     e.Handled = true; 
    }; 

Otro ejemplo, se puede encontrar here que establece:

La clase CustomWindowsManager proporciona una abstracción de una ventana personalizada vista previa en miniatura y vista previa en vivo (pEEK), incluyendo los instalaciones para recibir una notificación cuando un Previ ew mapa de bits es solicitada por la ventana del administrador de escritorio (DWM) y para agarrar automáticamente el mapa de bits de previsualización de una ventana.

El enlace de descarga para este código es here, que incluye la clase CustomWindowsManager. Esto parece proporcionar la vista previa en vivo.

+0

+1, probablemente necesite un RenderTargetBitmap para obtener los gráficos de la ventana. – user7116

1

Es probable que no pueda. Windows 7 canaliza los gráficos de una ventana abierta a la vista previa en vivo desde la barra de tareas. No puede saber cómo se ve la ventana mientras está minimizada porque no se está dibujando.

supongo que no es imposible de hacer miniaturas personalizadas. Aparte de la respuesta de CodeNaked, también encontré this article, que incluso incluye varias miniaturas de la misma aplicación.

Cuestiones relacionadas