Hay que tener en cuenta que para que se nos despliegue el mapa apenas se inicie la aplicación, hay que hacer algunas modificaciones que no se muestran en esta clase.
Básicamente hay dos formas de hacerlo, ambas requieren modificar
-
Modificar App.xaml.cs para reemplazar el View por defecto con el nuestro
-
Modificar AppShell.xaml para indicar que el template de contenido que se carga por default es de nuestro View en lugar del por Defecto.
1. MODIFICANDO App.xaml.cs
En nuestro proyecto encontramos el archivo App.xaml, y en el code behind (App.xaml.cs) podemos encontrar nuestro página o componente que se inicializa por defecto cuando se abre la App. Por default tenemos esto:
public partial class App : Application
{
public App()
{
InitializeComponent();
MainPage = new AppShell();
}
}
Lo que debemos hacer es modificar MainPage con nuestra página de mapa, así:
public partial class App : Application
{
public App()
{
InitializeComponent();
MainPage = new Views.ExplorandoFeatures.MapSamplePage();
}
}
2. MODIFICANDO AppShell.xaml
Esta forma me parece más correcta.
En primer lugar debemos importar nuestro namespace en donde tenemos nuestra página de mapa dentro de la etiqueta Shell principal, luego en la etiqueta ShellContent reemplazamos el valor de DataTemplate por nuestra página y listo. por defecto tenemos esto:
<?xml version="1.0" encoding="UTF-8" ?>
<Shell
x:Class="MauiPlatzi.AppShell"
xmlns="url/dotnet/2021/maui"
xmlns:x="url/xaml"
xmlns:local="clr-namespace:MauiPlatzi"
Shell.FlyoutBehavior="Disabled">
<ShellContent
Title="Home"
ContentTemplate="{DataTemplate local:MainPage}"
Route="MainPage" />
</Shell>
Luego de nuestro cambio debe quedar así:
<?xml version="1.0" encoding="UTF-8" ?>
<Shell
x:Class="MauiPlatzi.AppShell"
xmlns="url/dotnet/2021/maui"
xmlns:x="url/xaml"
xmlns:local="clr-namespace:MauiPlatzi"
xmlns:miAliasNameSpace="clr-namespace:MauiPlatzi.Views.ExplorandoFeatures.MapSamplePage"
Shell.FlyoutBehavior="Disabled">
<ShellContent
Title="Home"
ContentTemplate="{DataTemplate miAliasNameSpace:MapSamplePage}"
Route="MainPage" />
</Shell>
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?