Getting Started
Prerequisites
Install & Run
dotnet new install CrystalTemplate
dotnet new CT -o MyApp
cd MyApp
dotnet run
App.axaml.cs
public partial class App : CrystalApplication
{
public override void Initialize() => AvaloniaXamlLoader.Load(this);
public override void RegisterServices(IServiceCollection services)
{
services.AddMvvmTransient<MainView, MainViewModel>(); // ViewModel → DI, View → mapping
}
public override void CreateShell(IServiceProvider sp)
{
CreateShell<MainWindow, MainView>(); // Shell → new (not from DI)
}
}
View (View-First)
<UserControl ViewModelLocator.AutoWireViewModel="True">
<TextBlock Text="{Binding Greeting}"/>
</UserControl>
ViewModel-First
<ContentControl Content="{Binding MainViewModel}"/>
Next Steps