Compilación XAML en Xamarin.Forms
XAML se puede compilar de forma opcional directamente en lenguaje intermedio (IL) con el compilador XAML (XAMLC).
La compilación XAML ofrece una serie de ventajas:
- Realiza la comprobación en tiempo de compilación de XAML, notificando al usuario de los errores.
- Reduce parte del tiempo de carga y creación de instancias para los elementos XAML.
- Facilita reducir el tamaño de archivo del ensamblado final al dejar de incluir archivos .xaml.
La compilación XAML está deshabilitada de forma predeterminada en el marco de trabajo. Sin embargo, está habilitado en las plantillas para nuevos proyectos. Se puede habilitar o deshabilitar explícitamente ( ) en el nivel de ensamblado y XamlCompilationOptions.Skip clase agregando el XamlCompilation atributo .
En el ejemplo de código siguiente se muestra cómo habilitar la compilación XAML en el nivel de ensamblado:
using Xamarin.Forms.Xaml;
...
[assembly: XamlCompilation (XamlCompilationOptions.Compile)]
namespace PhotoApp
{
...
}
Aunque el atributo se puede colocar en cualquier lugar, un buen lugar para colocarlo es en AssemblyInfo.cs.
En este ejemplo, se realizará la comprobación en tiempo de compilación de todo el XAML incluido en el ensamblado, con errores XAML que se notifican en tiempo de compilación en lugar de en tiempo de ejecución. Por lo tanto, assembly el prefijo del atributo especifica que el atributo se aplica a todo el XamlCompilation ensamblado.
Nota:
El XamlCompilation atributo y la XamlCompilationOptions enumeración residen en el espacio de nombres Xamarin.Forms.Xaml , que se debe importar para usarlos.
En el ejemplo de código siguiente se muestra cómo habilitar la compilación XAML en el nivel de clase:
using Xamarin.Forms.Xaml;
...
[XamlCompilation (XamlCompilationOptions.Compile)]
public class HomePage : ContentPage
{
...
}
En este ejemplo, se realizará la comprobación en tiempo de compilación del CÓDIGO XAML para la clase y se notifican errores como parte HomePage del proceso de compilación.
Nota:
Los enlaces compilados se pueden habilitar para mejorar el rendimiento del enlace de datos en Xamarin.Forms las aplicaciones. Para obtener más información, vea Enlaces compilados.