tag: wpf

WPF - Recibir notificaciones cuando hay cambios de sesión

Afortunadamente es muy fácil de hacer si hacemo uso de esta libreria: Win32 Session Changes Notifier Que he creado yo mismo y esta disponible en Github. Lecturas recomendadas C# – Win32SessionChangesNotifier libreria para recibir notificaciones de cambios de sesión Qué es el bucle de mensajes, message loop o WndProc ? Forms - Recibir notificaciones cuando hay cambios de sesión Cómo obtener un manejador (handle) para una ventana de WPF Como usar el WndProc en una Ventana WPF Para Windows forms esta tarea es bastante sencilla e intuitiva, pero este no es el caso de WPF dadas las propias características de esta tecnología.…

leer más...

Como usar el WndProc en una Ventana WPF

WPF es una parte del .Net Framework muy robusta, pero a veces necesitamos que nuestra aplicación interactue con aspectos más relacionados con el sistema de ventanas del OS. En estos casos requerimos interceptar mensajes en el WndProc. Lecturas recomendadas Si de plano no sabes que es el WndProc no te pierdas este otro artículo que te pondrá en contexto: Qué es el bucle de mensajes, message loop o WndProc ? Más abajo verás que necesitamos obtener un handler a la ventana WPF, para ello revisa: C# – Como obtener un manejador (handle) para una ventana de WPF Para lograr acceder al WndProc…

leer más...

WPF – Hacer tus aplicaciones con tamaño de fuente responsive

Cambiar el tamaño de la fuente a medida que el control cambia de tamaño es una tarea frecuente y necesaria para una aplicación 'responsive', sin embargo en el caso de WPF pero esta pobremente documentado el Cómo hacerlo, en este articulo esta la respuesta. Este es uno de esos temas… Puedes pasar horas buscando diferentes alternativas alrededor de la web, encontraras cosas como •ViewBox •FontSizeConverter •IValueConverter •etc. Nada de eso funciona al menos no como se espera, aunque según el caso pueden dar una buena aproximación a la solución. He escrito este artículo para ayudar a muchos desarrolladores (y diseñadores)…

leer más...