Maui学习记录
MauiProgram引入扩展
public static class MauiProgram
{
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder.UseMauiApp<App>();
builder.ConfigureFonts(fonts =>
{
fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
fonts.AddFont("OpenSans-Semibold.ttf", "OpenSansSemibold");
});
builder.UsePrism(prism =>
{
prism.ConfigureServices(service =>
{
RestClientOptions restClientOptions = new()
{
//restClientOptions.RemoteCertificateValidationCallback += (sender, cert, chain, error) => true;
BaseUrl = new Uri("https://dynamicapi.lingyanspace.com"),
MaxRedirects = 5,
Timeout = TimeSpan.FromMinutes(3),
ThrowOnAnyError = true
};
RestClient restClient = new(restClientOptions);
service.AddSingleton(restClient);
service.AddSingleton<ICourseService, CourseService>();
});
prism.RegisterTypes(container =>
{
//注册MainPage到导航
container.RegisterForNavigation<MainPage>();
container.RegisterForRegionNavigation<HomeView, HomeViewModel>();
});
prism.OnInitialized((container) =>
{
var regionManager = container.Resolve<IRegionManager>();
regionManager.RegisterViewWithRegion("MainRegion", nameof(HomeView));
});
//导航到根目录
prism.CreateWindow(navigationService => navigationService.NavigateAsync($"/{nameof(MainPage)}"));
});
#if DEBUG
builder.Logging.AddDebug();
#endif
return builder.Build();
}
}
主页面添加区域
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage
x:Class="LearnMirro.MainPage"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:prism="http://prismlibrary.com"
Title="MainPage"
Background="#eee">
<ContentView prism:RegionManager.RegionName="MainRegion" />
</ContentPage>
无评论