el manejo de los cambios de orientación de manera efectiva para todos los controles con cambio de código pequeño

StackOverflow https://stackoverflow.com/questions/2240941

Pregunta

Tengo un proyecto de Windows Mobile incorporado en C #.

Tengo un montón de formas ya hechas que tienen diversos controles en él, de listviews a Editfields. Cuando el usuario cambia la orientación de algunos elementos no son refrescantes correctamente. Por ejemplo las columnas de la vista de lista son los mismos y no se acomoda el nuevo cambio de ancho de la pantalla (barras de desplazamiento aparecen o la mitad de la pantalla llena).

¿Cómo manejan estos cambios?
¿Tengo que llamar para cada forma estas correcciones a mano, o que pueda crear algún tipo de forma global para solucionar este problema? Me gustaría ir con el método más simple, si es posible.

Me gustaría evitar la manera clásica, para agregar código a todos mis formas. Así que estoy buscando mejores formas, y me gustaría ver más ideas.

¿Fue útil?

Solución

Estoy asumiendo que la mayoría de los controles están utilizando un DockStyle, y que le dará el 90% del camino en términos de actualización de la interfaz gráfica de usuario en los cambios de orientación. Para el ListView, que tendrá que añadir en algún código.

Puede agregar un controlador de eventos en Form.Resize, y no poner en el código para cambiar el tamaño de las columnas ListView. Se puede decir que el retrato vs paisaje mediante la comparación de ancho vs altura. También hay una manera de agregar un controlador de eventos en un cambio de orientación real, pero es de interoperabilidad y yo no recuerdo el código de improviso. Form.Resize debería ser suficiente para la mayoría de los casos.

Se puede extraer de un ejemplo aquí

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top