For Xamarin.Forms projects, initialization is required in multiple locations to ensure namespace schema and platform-specific features work correctly.
Core Project
In App.xaml.cs, call the initializer in the constructor:
public App()
{
InitializeComponent;
Sharpnado.CollectionView.Initializer.Initialize(true, false);
...
}
iOS
In AppDelegate.cs, call Initializer.Initialize() before Xamarin.Forms.Forms.Init() and LoadApplication():
public override bool FinishedLaunching(UIApplication app, NSDictionary options)
{
Initializer.Initialize();
global::Xamarin.Forms.Forms.Init();
LoadApplication(new App());
}
Android
In MainActivity.cs, call Initializer.Initialize() before Xamarin.Forms.Forms.Init() and LoadApplication():
public override OnCreate(Bundle savedInstanceState)
{
Initializer.Initialize();
global::Xamarin.Forms.Forms.Init();
LoadApplication(new App());
}