简体   繁体   中英

Windows Store Navigating from App.xaml.cs?

i got this problem and i cant seem to make it work, i want to navigate in a windows store project from App.xaml.cs to another page when there is no network,but i cant do it. Here is the code

sealed partial class App : Application
 {


    public App()
    {
        this.InitializeComponent();
        this.Suspending += OnSuspending;
        NetworkInformation.NetworkStatusChanged += NetworkInformation_NetworkStatusChanged;

    }

    private void NetworkInformation_NetworkStatusChanged(object sender)
    {


        ConnectionProfile profile =
            NetworkInformation.GetInternetConnectionProfile();

        if (profile.GetNetworkConnectivityLevel() >=
            NetworkConnectivityLevel.InternetAccess)
        {
            // We have Internet, all is golden
        }
        else
        {

           DoThis();


        }
    }


    public async void DoThis()
    {
        var dispatcher = Windows.UI.Core.CoreWindow.GetForCurrentThread().Dispatcher;

        await dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
        {
            Window.Current.Content = new Eroare();
        });
    }


    protected override void OnLaunched(LaunchActivatedEventArgs args)
    {
        Frame rootFrame = Window.Current.Content as Frame;

        // Do not repeat app initialization when the Window already has content,
        // just ensure that the window is active
        if (rootFrame == null)
        {
            // Create a Frame to act as the navigation context and navigate to the first page
            rootFrame = new Frame();

            if (args.PreviousExecutionState == ApplicationExecutionState.Terminated)
            {
                //TODO: Load state from previously suspended application
            }

            // Place the frame in the current Window
            Window.Current.Content = rootFrame;
        }

        if (rootFrame.Content == null)
        {
            // When the navigation stack isn't restored navigate to the first page,
            // configuring the new page by passing required information as a navigation
            // parameter
            if (!rootFrame.Navigate(typeof(MainPage), args.Arguments))
            {
                throw new Exception("Failed to create initial page");
            }

        }
        // Ensure the current window is active
        Window.Current.Activate();
    }




    /// <summary>
    /// Invoked when application execution is being suspended.  Application state is saved
    /// without knowing whether the application will be terminated or resumed with the contents
    /// of memory still intact.
    /// </summary>
    /// <param name="sender">The source of the suspend request.</param>
    /// <param name="e">Details about the suspend request.</param>
    private void OnSuspending(object sender, SuspendingEventArgs e)
    {
        var deferral = e.SuspendingOperation.GetDeferral();
        //TODO: Save application state and stop any background activity
        deferral.Complete();
    }
}

Any help please?

Try this,

var rootFrame = Window.Current.Content as Frame;
rootFrame.Navigate(typeof(YourPage));

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM