En .NET Compact Framework, no hay ningún valor FormWindowState.Minimize. ¿Cómo puedo minimizar mi aplicación, para que permanezca activa y disponible, pero devuelve el enfoque a la aplicación anterior?Cómo puedo minimizar un formulario por código en .NET Compact Framework
Respuesta
Esta es tu respuesta.
http://christian-helle.blogspot.com/2007/06/programmatically-minimize-application.html
Ha sido un tiempo desde que he usado Windows Mobile — aquel entonces todavía se llamaba PocketPC 2002, por lo que este puede ser manera fuera de fecha — pero en ese momento era el comportamiento predeterminado para hacer clic en el X
en la parte superior derecha de una aplicación. En lugar de cerrar, la aplicación recibiría el fondo. Supongo que eso ha cambiado.
Estoy de acuerdo. WinCE es diferente del cliente o servidor de Windows. –
Conozco la propiedad Form.MinimizeBox, que cambia el comportamiento del botón "Aceptar" entre "minimizar" y "cerrar". Lo que estoy buscando es una forma de minimizar un formulario por código. –
Llamar Ocultar() en su formulario activo.
Ese no es el comportamiento que estoy buscando, ya que la forma se vuelve invisible para Windows Mobile. Ya no ve la aplicación. Realmente estoy buscando una forma de volver al "proceso anterior" por código. –
Well WinMo no tiene el estado Minimizar para una ventana. ¿Qué quieres decir con que se convierte en "invisible"?Y cuando oculta su formulario, el último formulario que se muestra estará en la parte superior a menos que la pantalla Hoy se haya adelantado en orden Z o el otro proceso haya finalizado. – ctacke
estoy desarrollando en la mueca de dolor genérica (4.2 y 5.0) así que no estoy seguro de si mi solución funcionará para su problema de Windows Mobile.
En nuestro caso, nuestro formulario debe ocupar toda la pantalla (incluida la ocultación de la barra de tareas), no tiene barra de título, permite minimizar mediante código y minimiza el icono de la aplicación en la barra de tareas (para que pueda ser restaurado) dando enfoque al programa anterior en la pila de aplicaciones. No suena tan mal pero en la práctica no pude cumplir todos los requisitos al mismo tiempo, requirió algún truco.
Como otros han publicado, no hay Form.Minimize() en el marco compacto.
Form.Hide()
no me dieron forma de restaurar la aplicación. P/InvocarShowWindow(Form.Handle, 6)
, donde 6 = SW_MINIMIZE, minimizaría la aplicación a la barra de tareas pero solo cuandoForm.FormBorderStyle = Normal
(en lugar de Ninguno), sin embargo, esto mostraría la barra de título de la aplicación.- Necesitaba configurar
Form.WindowState = Normal
en lugar de Maximized; de lo contrario, cuando se minimizara la aplicación, se restablecería inmediatamente.
Al final armé lo siguiente para obtener lo que quería. Implicaba establecer manualmente el tamaño de la aplicación llenando la pantalla Y con una altura adicional para poder sesgar la aplicación y mover la barra de título fuera de la pantalla visible.
public class MyForm
{
public MyForm()
{
InitializeComponent();
NativeMethods.HideTaskbar();
FormBorderStyle = FormBorderStyle.FixedSingle;
WindowState = FormWindowState.Normal;
Rectangle screenBounds = Screen.PrimaryScreen.Bounds;
int taskBarHeight = SystemInformation.MenuHeight;
NativeMethods.MoveWindow(Handle,
0, -taskBarHeight,
screenBounds.Width, screenBounds.Height + taskBarHeight);
}
public void HandleMinimize()
{
NativeMethods.ShowTaskBar();
NativeMethods.ShowWindow(Handle, WindowShowStyle.Minimize);
}
La interceptación de la aplicación restaurar evento para ocultar la barra de tareas era mucho más complicado y ya que el autor originario no mencionó la barra de tareas no voy a entrar en ella.
Todos los métodos de clase NativeMethods estáticos son envoltorios para declaraciones de P/Invoke. Consulte la sección general en http://www.pinvoke.net para obtener más información sobre la implementación de estos.
- 1. Cómo centrar un formulario usando showdialog (.NET Compact Framework)
- 2. .net Compact Framework 4.0
- 3. .NET compact framework y ActiveSync
- 4. ¿Dónde está IQueryable en .NET Compact Framework?
- 5. .NET Compact Framework Impresión de librerías
- 6. .NET Compact Framework con Visual Studio 2010?
- 7. Perfilador de memoria para .NET Compact Framework
- 8. ¿Cómo compilar una biblioteca en .NET Framework y .NET Compact Framework?
- 9. Rhino Mocks & Compact Framework
- 10. Desarrollo de .Net Compact Framework en Windows Embedded CE 6.0
- 11. ¿Cómo se muestran los gifs animados con .NET Compact Framework
- 12. WebRequest asíncrono con parámetros POST en .NET Compact Framework
- 13. Milisegundos en DateTime.Now en .NET Compact Framework siempre es cero?
- 14. Número de versión en la aplicación .NET Compact Framework
- 15. ¿Cómo puedo usar OpenStreetMap en mi aplicación Compact Framework?
- 16. Compact Framework Current Folder
- 17. .NET Minimizar en la bandeja Y Minimizar los recursos necesarios
- 18. .NET compact framework - ¿detecta si está bajo el emulador?
- 19. Eliminar solo en Compact Framework
- 20. Cómo minimizar .net AXD Resources
- 21. Cómo minimizar el código HTML?
- 22. Alternativas a Reflection.Emit para Compact Framework
- 23. Confusión sobre el futuro de .NET Compact Framework
- 24. Contenedor IoC/DI compatible con Compact Framework
- 25. Convertir BMP a PCX C# Compact Framework
- 26. Linq Expression Trees en Compact Framework
- 27. Cómo abrir un nuevo correo electrónico y asignar el asunto, usando .NET Compact Framework
- 28. ¿Cómo puedo lograr tiempos de espera de recepción y envío no infinitos en un socket en Compact Framework?
- 29. ¿Es .NET Compact un subconjunto perfecto de .NET?
- 30. Pocket PC/Windows Mobile: cómo detectar minimizar inteligente
Muchas gracias. ¡Debería haber intentado eso! –