当应用程序在UWP中重新启动时,如何导航到主屏幕

时间:2017-11-03 10:57:06

标签: c# xaml uwp

我正在开发通用Windows应用程序,

如果用户重新启动应用程序,我想直接将用户发送到公司屏幕,我使用下面的代码块,但它给了我空引用异常

 Windows.Storage.ApplicationDataContainer localSettings = Windows.Storage.ApplicationData.Current.LocalSettings;
        Windows.Storage.ApplicationDataCompositeValue composite =(Windows.Storage.ApplicationDataCompositeValue)localSettings.Values["exampleCompositeSetting"];
        if (composite == null)
        {
            // No data
        }
        else
        {
            string user = composite["UserId"].ToString();
            Frame.Navigate(typeof(Companies));              
        }

任何人都帮我解决这个问题。

谢谢, SRINIVAS。

1 个答案:

答案 0 :(得分:1)

如果没有数据,则为空。

localSettings.Values["exampleCompositeSetting"];

如果将null转换为其他类型,则会出现NullReferenceException。

对此投射使用作为关键字。如果您不熟悉,请阅读“as”和“is”关键字的文档。

 Windows.Storage.ApplicationDataCompositeValue composite = localSettings.Values["exampleCompositeSetting"] as (Windows.Storage.ApplicationDataCompositeValue);

如果值为null,它将不会抛出异常,您只需要在使用结果之前检查结果是否为null。

另请参阅此答案:as vs classic casting