-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathApp.xaml.cs
55 lines (43 loc) · 1.41 KB
/
App.xaml.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
using System;
using Windows.ApplicationModel;
using Windows.ApplicationModel.Activation;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Navigation;
using ReactiveCalculator.UWP;
using Xamarin.Forms;
using Application = Windows.UI.Xaml.Application;
using Frame = Windows.UI.Xaml.Controls.Frame;
namespace ReactiveCalculator.UWP
{
sealed partial class App : Application
{
public App()
{
this.InitializeComponent();
this.Suspending += this.OnSuspending;
}
protected override void OnLaunched(LaunchActivatedEventArgs e)
{
var rootFrame = Window.Current.Content as Frame;
if (rootFrame == null)
{
rootFrame = new Frame();
rootFrame.NavigationFailed += this.OnNavigationFailed;
Forms.Init(e);
Window.Current.Content = rootFrame;
}
if (rootFrame.Content == null)
rootFrame.Navigate(typeof(MainPage), e.Arguments);
Window.Current.Activate();
}
void OnNavigationFailed(object sender, NavigationFailedEventArgs e)
=> throw new Exception("Failed to load Page " + e.SourcePageType.FullName);
void OnSuspending(object sender, SuspendingEventArgs e)
{
e
.SuspendingOperation
.GetDeferral()
.Complete();
}
}
}