退出时在Silverlight应用中保留值
本文关键字:保留 应用 Silverlight 退出 | 更新日期: 2023-09-27 18:15:16
正如这个问题的标题所说,我试图在应用程序关闭时保留Timespan值。情况是这样的……我正在写一个Windows小工具,每次弹出窗口关闭时,它就会破坏它,Timespan值也会随之消失。我希望每次弹出窗口关闭时它都保留这个值这是如何实现的?
我当前所做的代码如下:
SilverlightGadgetUtilities.Stopwatch watch = new SilverlightGadgetUtilities.Stopwatch();
private void Application_Startup(object sender, StartupEventArgs e)
{
watch.currentTime();
this.RootVisual = new Page();
}
private void Application_Exit(object sender, EventArgs e)
{
watch.currentTime();
}
这是在Stopwatch类中
public TimeSpan? currentTime()
{
current = Elapsed;
return current;
}
public TimeSpan? Elapsed
{
get
{
return new TimeSpan(this.GetElapsedDateTimeTicks() * 10000000);
}
}
其中GetElapsedDateTimeTicks()
使用DateTime.Now.Second()
进行时序。
再次感谢!
您可以将数据存储在应用程序的独立存储设置中,并在启动时检索。
下面是一个在isolatedstoragessettings中存储信息的示例:
IsolatedStorageSettings.ApplicationSettings.Add("MySettingName", MySetting);
然后使用:
检索它IsolatedStorageSettings.ApplicationSettings["MySettingName"];
IsolatedStorageSettings。ApplicationSettings的行为非常像字典。您应该检查是否已经存储了该名称的设置,如果是,要么删除它,要么覆盖它。覆盖它可以这样做:
if (!IsolatedStorageSettings.ApplicationSettings.Contains("MySettingName"))
IsolatedStorageSettings.ApplicationSettings.Add("MySettingName", MySetting);
else
IsolatedStorageSettings.ApplicationSettings["MySettingName"] = MySetting;
删除和重新添加的代码将是类似的,除了将else块交换为:
else
{
IsolatedStorageSettings.ApplicationSettings.Remove("MySettingName");
IsolatedStorageSettings.ApplicationSettings.Add("MySettingName", MySetting);
}