快速开始
前置条件
安装并运行
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 → 映射
}
public override void CreateShell(IServiceProvider sp)
{
CreateShell<MainWindow, MainView>(); // Shell → new(不进 DI)
}
}
View(View-First)
<UserControl ViewModelLocator.AutoWireViewModel="True">
<TextBlock Text="{Binding Greeting}"/>
</UserControl>
ViewModel-First
<ContentControl Content="{Binding MainViewModel}"/>
下一步