Windows 8 应用开发 - 本地数据存储

简介: 原文:Windows 8 应用开发 - 本地数据存储     在应用中通常会遇到用户主动或被动存储信息的情况,当应用关闭后这些数据仍然会存储在本地设备上,用户下次重新激活应用时会自动加载这些数据。下面将通过一个小实例演示如何把用户数据存储到本地,首先在Windows 8 应用中创建两个输入框:姓名、年龄。
原文: Windows 8 应用开发 - 本地数据存储

     在应用中通常会遇到用户主动或被动存储信息的情况,当应用关闭后这些数据仍然会存储在本地设备上,用户下次重新激活应用时会自动加载这些数据。下面将通过一个小实例演示如何把用户数据存储到本地,首先在Windows 8 应用中创建两个输入框:姓名、年龄。

<StackPanel Grid.Row="1" Margin="120,30,0,0">
    <StackPanel Orientation="Horizontal" Margin="0,20,0,20">
        <TextBlock Text="Name: " Style="{StaticResource BasicTextStyle}" Width="50"/>
        <TextBox x:Name="nameInput" Width="200"/>
    </StackPanel>
    <StackPanel Orientation="Horizontal" Margin="0,20,0,20">
        <TextBlock Text="Age: " Style="{StaticResource BasicTextStyle}" Width="50"/>
        <TextBox x:Name="ageInput" Width="200"/>
    </StackPanel>
    <StackPanel Orientation="Horizontal" Margin="0,20,0,20">
        <Button Content="Save" Click="Save_Button_Click"/>
        <Button Content="Reset" Click="Reset_Button_Click"/>
    </StackPanel>
</StackPanel>

      打开MainPage .xaml.cs 为了使用数据存储API,先添加using Windows.Storage 命名空间。在MainPage中使用ApplicationData.LocalSettings属性获取到应用设置本地存储空间。

ApplicationDataContainer localSettings = ApplicationData.Current.LocalSettings;

接下来在Save_Button_Click 事件中为localSettings 设置两个数值分别存储Name 和Age 数据。

private void Save_Button_Click(object sender, RoutedEventArgs e)
{
    localSettings.Values["name"] = nameInput.Text;
    localSettings.Values["age"] = ageInput.Text;
}

     下面要做的就是在应用激活时将已经保存在本地的数据加载进来,在MainPage .xaml.cs 程序中已经有一个LoadState 方法用来加载应用数据或状态,我们可以在这里完成数据的加载工作。

protected override void LoadState(Object navigationParameter, Dictionary<String, Object> pageState)
{
    
    if (localSettings.Values.ContainsKey("name"))
    {
        nameInput.Text = localSettings.Values["name"].ToString();
    }

    if (localSettings.Values.ContainsKey("age"))
    {
        ageInput.Text = localSettings.Values["age"].ToString();
    }
}

     本地数据存储用于保存例如应用设置相关的重要信息,当然这些数据是留存本地设备中的,如果这些数据不再使用时也可以进行消除操作。如下代码就是将之前的姓名和年龄信息进行删除,数据删除后重新激活应用将无法加载。

private void Reset_Button_Click(object sender, RoutedEventArgs e)
{
    localSettings.Values.Remove("name");
    localSettings.Values.Remove("age");
    nameInput.Text = "";
    ageInput.Text = "";
}

源码下载

http://sdrv.ms/RxauDH

目录
相关文章
|
5月前
|
应用服务中间件 nginx Windows
windows下DOS命令杀掉Nginx应用进程
windows下DOS命令杀掉Nginx应用进程
|
3月前
|
API Python Windows
python3应用windows api对后台程序窗口及桌面截图并保存的方法
python3应用windows api对后台程序窗口及桌面截图并保存的方法
94 1
|
1月前
|
数据可视化 数据库 C++
Qt 5.14.2揭秘高效开发:如何用VS2022快速部署Qt 5.14.2,打造无与伦比的Windows应用
Qt 5.14.2揭秘高效开发:如何用VS2022快速部署Qt 5.14.2,打造无与伦比的Windows应用
|
2月前
|
安全 Linux iOS开发
上传 iOS 应用变得更加容易 - 在 Windows 上架 iOS APP 的工具介绍
上传 iOS 应用变得更加容易 - 在 Windows 上架 iOS APP 的工具介绍
|
3月前
|
存储 Kubernetes 安全
虚拟机测试Windows Server 2016原地升级2019,应用和数据完美保留
Windows Server 2016可以无缝升级到2019版本,确保应用程序和数据在原地升级过程中完整保留。
112 0
|
3月前
|
Linux iOS开发 Windows
windows 如何上架 ios 应用到 app store
windows 如何上架 ios 应用到 app store
|
3月前
|
消息中间件 Java Kafka
windows下kafka的环境配置及rdkafka库的应用
windows下kafka的环境配置及rdkafka库的应用
|
8月前
|
开发工具 git Windows
太阳当空照-Windows服务化方式NSSM应用
太阳当空照-Windows服务化方式NSSM应用
126 0
|
4月前
|
C# Windows
C#安装“Windows 窗体应用(.NET Framework)”
C#安装“Windows 窗体应用(.NET Framework)”
51 0
|
5月前
|
TensorFlow 算法框架/工具 异构计算
YOLO实践应用之搭建开发环境(Windows系统、Python 3.8、TensorFlow2.3版本)
基于YOLO进行物体检测、对象识别,先和大家分享如何搭建开发环境,会分为CPU版本、GPU版本的两种开发环境,本文会分别详细地介绍搭建环境的过程。主要使用TensorFlow2.3、opencv-python4.4.0、Pillow、matplotlib 等依赖库。
106 0