XAML-Kompilierung in Xamarin.Forms
XAML kann optional direkt in die Zwischensprache (IL) mit dem XAML-Compiler (XAMLC) kompiliert werden.
Die XAML-Kompilierung bietet eine Reihe von Vorteilen:
- Er führt eine XAML-Überprüfung zur Kompilierzeit durch und benachrichtigt den Benutzer über eventuelle Fehler.
- Er entfernt etwas Lade- und Instanziierungszeit für XAML-Elemente.
- Er hilft bei der Verringerung der Dateigröße der finalen Assembly, indem XAML-Dateien nicht mehr eingeschlossen werden.
Die XAML-Kompilierung ist standardmäßig im Framework deaktiviert. Sie ist jedoch in den Vorlagen für neue Projekte aktiviert. Sie kann sowohl auf Assembly- als auch auf Klassenebene explizit aktiviert oder deaktiviertXamlCompilationOptions.Skip
werden, indem Sie das XamlCompilation
Attribut hinzufügen.
Das folgende Codebeispiel veranschaulicht das Aktivieren der XAML-Kompilierung auf Assemblyebene:
using Xamarin.Forms.Xaml;
...
[assembly: XamlCompilation (XamlCompilationOptions.Compile)]
namespace PhotoApp
{
...
}
Während das Attribut an einer beliebigen Stelle platziert werden kann, ist es ein guter Ort, um es in AssemblyInfo.cs zu platzieren.
In diesem Beispiel wird die Kompilierungszeitüberprüfung aller in der Assembly enthaltenen XAML-Code ausgeführt, wobei XAML-Fehler zur Kompilierungszeit und nicht zur Laufzeit gemeldet werden. Daher gibt das assembly
Präfix für das XamlCompilation
Attribut an, dass das Attribut für die gesamte Assembly gilt.
Hinweis
Das XamlCompilation
Attribut und die XamlCompilationOptions
Enumeration befinden sich im Xamarin.Forms.Xaml
Namespace, der importiert werden muss, um sie zu verwenden.
Das folgende Codebeispiel veranschaulicht das Aktivieren der XAML-Kompilierung auf Klassenebene:
using Xamarin.Forms.Xaml;
...
[XamlCompilation (XamlCompilationOptions.Compile)]
public class HomePage : ContentPage
{
...
}
In diesem Beispiel wird die Kompilierungszeitüberprüfung des XAML-Codes für die HomePage
Klasse ausgeführt, und Fehler werden als Teil des Kompilierungsprozesses gemeldet.
Hinweis
Kompilierte Bindungen können aktiviert werden, um die Datenbindungsleistung in Xamarin.Forms Anwendungen zu verbessern. Weitere Informationen finden Sie unter Kompilierte Bindungen.