Quando si crea un nuovo progetto Windows Phone 7 viene automaticamente creata una pagina MainPage.xaml che rappresenta la pagina iniziale dell’applicazione:
Nel caso si voglia cambiarla il processo non è esattamente lo stesso di Silverlight, questo perchè la pagina è in realtà ospitata all’interno del Frame di navigazione PhoneApplicationFrame il quale viene impostato come RootVisual allo startup all’interno di App.Xaml.cs
1: private void InitializePhoneApplication()
2: {
3: if (phoneApplicationInitialized)
4: return;
5:
6: // Create the frame but don't set it as RootVisual yet; this allows the splash
7: // screen to remain active until the application is ready to render.
8: RootFrame = new PhoneApplicationFrame();
9: RootFrame.Navigated += CompleteInitializePhoneApplication;
10:
11: // Handle navigation failures
12: RootFrame.NavigationFailed += RootFrame_NavigationFailed;
13:
14: // Ensure we don't initialize again
15: phoneApplicationInitialized = true;
16: }
17:
18: // Do not add any additional code to this method
19: private void CompleteInitializePhoneApplication(object sender, NavigationEventArgs e)
20: {
21: // Set the root visual to allow the application to render
22: if (RootVisual != RootFrame)
23: RootVisual = RootFrame;
24:
25: // Remove this handler since it is no longer needed
26: RootFrame.Navigated -= CompleteInitializePhoneApplication;
27: }
inoltre al momento non c’è traccia di questa impostazione all’interno delle proprietà del progetto.
La risposta è nel file WMAppManifest.xml, non molto evidente a dire il vero, presente nella cartella Properties del progetto:
Aprendolo è possibile trovare l’elemento <defaulTask>
<Tasks>
<DefaultTask Name ="_default" NavigationPage="MainPage.xaml"/>
</Tasks>
Sostituendo il contenuto dell’attributo NavigationPage è possibile specificare la nuova starting page.
Technorati Tags:
wp7,
Startup page