Kompilacja XAML w programie Xamarin.Forms
Język XAML można opcjonalnie skompilować bezpośrednio w języku pośrednim (IL) za pomocą kompilatora XAML (XAMLC).
Kompilacja XAML oferuje szereg korzyści:
- Wykonuje sprawdzanie czasu kompilacji kodu XAML, powiadamiając użytkownika o wszelkich błędach.
- Usuwa część czasu ładowania i tworzenia wystąpień dla elementów XAML.
- Pomaga to zmniejszyć rozmiar pliku końcowego zestawu, nie dołączając już plików xaml.
Kompilacja XAML jest domyślnie wyłączona w strukturze. Jednak jest ona włączona w szablonach dla nowych projektów. Można ją jawnie włączyć lub wyłączyć (XamlCompilationOptions.Skip
) zarówno na poziomie zestawu, jak i klasy, dodając XamlCompilation
atrybut .
W poniższym przykładzie kodu pokazano włączanie kompilacji XAML na poziomie zestawu:
using Xamarin.Forms.Xaml;
...
[assembly: XamlCompilation (XamlCompilationOptions.Compile)]
namespace PhotoApp
{
...
}
Chociaż atrybut można umieścić w dowolnym miejscu, dobrym miejscem, aby umieścić go w AssemblyInfo.cs.
W tym przykładzie zostanie wykonane sprawdzanie czasu kompilacji wszystkich kodu XAML zawartego w zestawie, a błędy XAML są zgłaszane w czasie kompilacji, a nie w czasie wykonywania. W związku z assembly
tym prefiks atrybutu XamlCompilation
określa, że atrybut ma zastosowanie do całego zestawu.
Uwaga
Atrybut XamlCompilation
i XamlCompilationOptions
wyliczenie znajdują się w Xamarin.Forms.Xaml
przestrzeni nazw, która musi zostać zaimportowana, aby ich używać.
W poniższym przykładzie kodu pokazano włączanie kompilacji XAML na poziomie klasy:
using Xamarin.Forms.Xaml;
...
[XamlCompilation (XamlCompilationOptions.Compile)]
public class HomePage : ContentPage
{
...
}
W tym przykładzie zostanie wykonane sprawdzanie czasu kompilacji kodu XAML dla HomePage
klasy i błędy zgłaszane w ramach procesu kompilacji.
Uwaga
Skompilowane powiązania można włączyć w celu zwiększenia wydajności powiązań danych w Xamarin.Forms aplikacjach. Aby uzyskać więcej informacji, zobacz Skompilowane powiązania.