应用程序的第一次执行

本文关键字:执行 第一次 应用程序 | 更新日期: 2023-09-27 18:26:32

在第一次执行Windows Phone 7应用程序时需要做一些事情。我该如何检查,是先执行吗?

应用程序的第一次执行

您可以为此使用IsolatedStorage。有关详细信息,请参阅MSDN。有关基本实现,请参阅此链接。

在第一次启动时,甚至在设置持久默认设置之前,您可以计算保存的设置的数量:

if (IsolatedStorageSettings.ApplicationSettings.Count == 0)
    MessageBox.Show("No setting avalible - applications fisrt launch!");

我会把它放在MainPage的构造函数中。

这应该是你所需要的。希望这能有所帮助。

我还建议您使用IsolatedStorage,但要特别向隔离存储添加一个布尔键,然后验证它是否设置为true。

示例:

using System;
using System.IO.IsolatedStorage;
/// <summary>
/// Application Settings
/// </summary>
public class AppSettings
{
    /// <summary>
    /// IsFirstStart IsolatedStorage Key.
    /// </summary>
    public const string IsFirstStartKey = "firststart";
    /// <summary>
    /// Gets or sets a value indicating whether this instance is the first start.
    /// </summary>
    /// <value>
    ///     <c>true</c> if this instance is the first start; otherwise, <c>false</c>.
    /// </value>
    public static bool IsFirstStart
    {
        get
        {
            if (IsolatedStorageSettings.ApplicationSettings.Contains(AppSettings.IsFirstStartKey))
                return (bool)IsolatedStorageSettings.ApplicationSettings[AppSettings.IsFirstStartKey];
            else
                return true;
        }
        set
        {
            if (IsolatedStorageSettings.ApplicationSettings.Contains(AppSettings.IsFirstStartKey))
                IsolatedStorageSettings.ApplicationSettings[AppSettings.IsFirstStartKey] = value;
            else
                IsolatedStorageSettings.ApplicationSettings.Add(AppSettings.IsFirstStartKey, value);
            IsolatedStorageSettings.ApplicationSettings.Save();
        }
    }
}

用法:

if (AppSettings.IsFirstStart == false)
{
    // First Start, do some logic
    // ...
    // But remember to set it to true, once it's done!
    AppSettings.IsFirstStart = true;
}

您可以将代码放入应用程序生活方式中描述的各种事件中

下面的链接显示了windows phone应用程序的应用程序生命周期,并显示了app.xaml.cs文件中出现的4个事件

http://www.c-sharpcorner.com/UploadFile/dhananjaycoder/block-diagram-on-windows-phone-7-application-life-cycle-even/

或更少行您可以在中进行验证

private void Application_Launching(对象发送方,LaunchingEventArgs e){}

在隔离存储中保存一个变量。如果不能,请尝试get it,这意味着这是您第一次使用该应用程序,但如果能够加载变量,则该应用程序已经启动。

希望它能帮助