Resumen
La aplicación weather que usted mantiene utiliza un servicio weather que ha anunciado recientemente su cierre. Necesitaba empezar a investigar otros servicios weather. Sabiendo que el cambio de servicios significa que sus datos podrían cambiar, quería pasar de utilizar el código para actualizar la interfaz de usuario a la vinculación de datos. De este modo, cuando decida qué servicio weather va a utilizar, no tendrá que preocuparse de que la interfaz de usuario se vea afectada.
El enlace de datos que hizo en los ejercicios redujo el código necesario para actualizar la interfaz de usuario cuando cambian los datos. En lugar de utilizar el controlador de eventos del botón para interactuar con los controles de la interfaz de usuario para presentar los datos, se ha pasado a la vinculación de datos. El objeto de datos del servicio weather se estableció como el contexto de vinculación para la página, y los controles de la página se vincularon a las propiedades de ese objeto de datos. La interfaz de usuario se sincronizó automáticamente con los datos, independientemente de cómo se actualizó el servicio weather. También ha podido reducir el código para el cambio de Fahrenheit a Celsius utilizando la vinculación de datos con un convertidor.
Imagine que el código subyacente se ve afectado sin enlace de datos. Si cambió el nombre de un control, cambió un control a otro tipo o incluso eliminó un control, el código subyacente ya no se compilaría. Si el servicio weather deja de proporcionar un campo específico de datos, como la humedad, el código se bloquearía al intentar presentarlo en la interfaz de usuario. A los usuarios les dejaba de funcionar la aplicación de repente y no sabían qué pasaba.
La vinculación de datos sincroniza automáticamente los datos con la interfaz de usuario. En cuanto cambian los datos weather, también cambia todo lo que está vinculado a ellos. Cuando un tipo de propiedad de la interfaz de usuario y el tipo de objeto de datos no coinciden, un conversor transforma los datos vinculados para que la interfaz de usuario los presente correctamente. Esto reduce el código subyacente necesario para mantener la interfaz de usuario. Dónde proceden los datos y cómo se desencadenaron los datos no es preocupante para la mayoría de la interfaz de usuario. Si la humedad ya no se proporcionaba en el objeto de datos, la interfaz de usuario vinculada a los datos no mostraría nada para la etiqueta de humedad en lugar de bloquearse. Es una experiencia mucho mejor para los usuarios en lugar de una aplicación bloqueada.
Saber más
- Documentación de la interfaz de usuario de aplicaciones multiplataforma de .NET
- XAML en .NET MAUI
- Enlace de datos en .NET MAUI