Estaba leyendo las pautas de la interfaz de usuario de Windows Vista a las que se vinculó alguien en otra pregunta, y mencionaron que usted debería poder sobrevivir a un cambio a 120 DPI. Bueno, enciendo mi práctico VM con mi aplicación instalada, y ¿qué obtenemos ... AAAAGH !!! Error de interfaz de usuario masiva!Interfaz de usuario independiente de tamaño de fuente: ¿todo se rompió cuando cambié a 120 ppp?
Todo está desordenado: algunos contenedores no son lo suficientemente grandes para su texto; algunos controles que estaban colocados "uno al lado del otro" ahora están todos aplastados/separados; algunos botones no son lo suficientemente altos; mis columnas ListView
no son lo suficientemente anchas ... eeek.
Parece que es necesario un enfoque completamente diferente. Mi anterior era básicamente el uso del diseñador VS2008 Windows Forms para crear, supongo, un diseño basado en píxeles. Puedo ver que si me quedara con Windows Forms, FlowLayoutPanel
s sería útil, aunque los encontré bastante inflexibles en el pasado. Tampoco resuelven el problema donde los contenedores (por ejemplo, la forma en sí) no son lo suficientemente grandes; presumiblemente hay una manera de hacer eso? Tal vez esa propiedad AutoSize
?
Esto también podría ser una señal de que es hora de enviar un barco a WPF; Tengo la impresión de que está específicamente diseñado para este tipo de cosas.
La cuestión básica parece reducirse a las siguientes:
- Si tuviera que seguir con Windows Forms, lo son todos los trucos para lograr una distribución de tamaño de fuente independiente de que puedan sobrevivir a la configuración del usuario a su fuentes grandes, o configurando la pantalla a 120 DPI?
- ¿Tiene WPF ventajas significativas aquí, y si es así, puede intentar convencerme de que vale la pena el cambio?
- ¿Existen algunas "mejores prácticas" generales para diseños independientes del tamaño de fuente, ya sea en la pila .NET o en general?
Siempre he usado Anchor, Dock, AutoSize y TableLayoutPanels para lograr interfaces de usuario que se puedan traducir y dar como resultado formas redimensionables. Sin embargo, en la configuración de DPI alta con la casilla de verificación "Escala de PP de estilo XP" desactivada, encontré que cada una de mis aplicaciones tiene fuentes borrosas. ¿Algún consejo sobre arreglar eso? –
@romkyns: a menos que su aplicación indique específicamente que es "muy sensible a los ppp", su aplicación obtendrá la misma solución kludge que todas las demás aplicaciones con errores. Cuando solicite los ppp actuales, le mienten a su aplicación (se dice que es 96), y la tarjeta gráfica escalará su formulario por usted, lo que lo hará borroso. Microsoft dejó de intentar hacer que los desarrolladores hicieran lo que se supone que deben hacer, es por eso que todos tienen que optar por ** escalar **. Google: manifiesto 'dpiAware'. –