基本存储形式

本地设置:ApplicationData.Current.LocalSettings

漫游设置:ApplicationData.Current.RoamingSettings

支持的数据类型:简单类型数据(不支持复合类型)

组合类型:ApplicationDataCompositeValue

     <StackPanel>
<TextBox x:Name="txtKey" Header="KEY"/>
<TextBox x:Name="txtValue" Header="VALUE"/>
<Button Content="SET" Click="btnSet_Click"/>
<Button Content="GET" Click="btnGet_Click"/>
</StackPanel>
         //操作数据配置,必须先拿到数据容器
ApplicationDataContainer container = ApplicationData.Current.RoamingSettings;//漫游设置
private void btnSet_Click(object sender, RoutedEventArgs e)
{
//Values为数据容器
container.Values.Add(txtKey.Text, txtValue.Text);//将数据放到容器当中
// 不支持复合类型
//container.Values.Add(txtKey.Text, new MyData { Value = txtValue.Text });
//复杂数据用ApplicationDataCompositeValue
ApplicationDataCompositeValue values = new ApplicationDataCompositeValue();
values["Value"] = txtValue.Text;
container.Values.Add(txtKey.Text, values);
}
private void btnGet_Click(object sender, RoutedEventArgs e)
{
if (!container.Values.ContainsKey(txtKey.Text))
{
txtValue.Text = "没有";
return;
}
txtValue.Text = container.Values[txtKey.Text].ToString();
}
}
public class MyData
{
public string Value { get; set; }
}
多容器存储

创建存储容器:ApplicationData.Current.LocalSettings.CreateContainer();

参数:

Key:容器唯一标识,可以通过 Key 找到已有容器

ApplicationDataCreateDisposition:容器创建选项

Always:如果存在则使用现有的,不存在创建新的

Existing:必须是基于现有容器

容器的目的:对于数据分文别类,便于批量维护

其他容器操作:ApplicationData.Current.LocalSettings.DeleteContainer();

     public sealed partial class MainPage : Page
{
//操作数据配置,必须先拿到数据容器
ApplicationDataContainer container = ApplicationData.Current.RoamingSettings;//漫游设置
ApplicationDataContainer myContainer;//多容器存储
public MainPage()
{
this.InitializeComponent();
this.NavigationCacheMode = NavigationCacheMode.Required;
}
/// <summary>
/// 在此页将要在 Frame 中显示时进行调用。
/// </summary>
/// <param name="e">描述如何访问此页的事件数据。
/// 此参数通常用于配置页。</param>
protected override void OnNavigatedTo(NavigationEventArgs e)
{
// Existing:标识必须要基于一个现有容器基础之上;
myContainer = container.CreateContainer("my_container", ApplicationDataCreateDisposition.Always);
}
private void btnSet_Click(object sender, RoutedEventArgs e)
{
//Values为数据容器
myContainer.Values.Add(txtKey.Text, txtValue.Text);//将数据放到容器当中
}
private void btnGet_Click(object sender, RoutedEventArgs e)
{
if (!myContainer.Values.ContainsKey(txtKey.Text))
{
txtValue.Text = "没有";
return;
}
txtValue.Text = myContainer.Values[txtKey.Text].ToString();
}
}

Windows Phone 五、配置存储的更多相关文章

  1. Windows下安装配置MongoDB

    Windows下安装配置MongoDB 一,介绍 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能. MongoDB ...

  2. redis.windows.conf各项配置参数介绍 (九)

    # 默认情况下,redis不是在后台模式运行的,如果需要在后台进程运行,把该项的值更改为yes,默认为no daemonize:是否以后台daemon方式运行 # 如redis服务以后台进程运行的时候 ...

  3. Citrix 服务器虚拟化之五 Xenserver配置存储

    Citrix 服务器虚拟化之五  Xenserver配置存储 XenServer中定义了一个容器称为存储库(SR)来描述一个特定的存储目标存储虚拟磁盘映像(VDI). VDI是一个的磁盘抽象,包含一个 ...

  4. Maven在Windows中的配置以及IDE中的项目创建

    Maven在Windows下的配置 1.Maven下载地址:http://maven.apache.org/download.cgi,下载红框里的版本即可. 2.解压到D盘: 3.修改配置文件sett ...

  5. Windows平台安装配置mysql数据库

    Windows平台安装配置mysql数据库 作者:Eric 微信:loveoracle11g 去下载mysql软件 https://www.mysql.com/downloads/ https://d ...

  6. (转)windows 下安装配置 Nginx 详解

    windows 下安装配置 Nginx 详解 本文转自https://blog.csdn.net/kingscoming/article/details/79042874 nginx功能之一可以启动一 ...

  7. QT学习之windows下安装配置PyQt5

    windows下安装配置PyQt5 目录 为什么要学习QT 命令行安装PyQt5以及PyQt5-tools 配置QtDesigner.PyUIC及PyRcc 为什么要学习QT python下与界面开发 ...

  8. hyper-v 用户无法再 创建外部配置存储 0x80070005

    windows server 2008R2 刚安装的hyper-v 重启过. 修改配置文件到d:\Hyper-V目录下, hyper-V 创建 服务器遇到错误 操作失败 创建外部配置存储:一般性拒绝访 ...

  9. [转帖]Docker五种存储驱动原理及应用场景和性能测试对比

    Docker五种存储驱动原理及应用场景和性能测试对比 来源:http://dockone.io/article/1513 作者: 陈爱珍 布道师@七牛云   Docker最开始采用AUFS作为文件系统 ...

  10. Windows Server 2008配置系统安全策略

    下面学习Windows Server 2008配置系统安全策略 在工作组中的计算机本地安全策略有 用户策略,密码策略,密码过期默认42天 服务账户设置成永不过期,帐户锁定策略,本地策略,审核策略,计算 ...

随机推荐

  1. blur和click事件的先后顺序问题

    这两个同时用会有冲突.懒得翻译了,需要的自己看哈. 以下摘自stackoverflow. I have an input field, where I try to make autocomplete ...

  2. SOAPUI使用教程-WSDL项目---检查器

    SoapUI Pro添加了许多可用的WSDL消息上下文的检查器. XSD / XML Schema检查器 XML Schema检查器显示当前节点对应的XML模式定义. 下面的屏幕截图显示了在Bing搜 ...

  3. Ubuntu下使用vsftpd实现FTP

    ## 哈哈哈啊哈 被领导啪啪啪打脸,文件连在线打开都不行,你做事情的时候有没有考虑过别人使用时的感受!! 需求: 部门老大希望在内网搭建一个用于员工共享文件的系统. 很自然的就想到通过FTP去实现. ...

  4. [LintCode] Delete Node in the Middle of Singly Linked List 在单链表的中间删除节点

    Implement an algorithm to delete a node in the middle of a singly linked list, given only access to ...

  5. ubuntu快捷复制粘贴

    今天使用putty,纠结复制粘贴的时候,才发现 原来只要选中文本后,就可以中键粘贴 整个桌面环境可用,新技能啊以前居然不知道

  6. 兼容IE浏览器的js浏览器全屏代码

    众所周知,IE是个奇葩的浏览器,但是由于用户量很大,开发者还是不得不为IE考虑一下,于是,各种浏览器相关的操作,都要多一个特别的判断——专门针对IE浏览器的判断,这里的全屏也不例外.看代码: func ...

  7. hihoCoder 1393 网络流三·二分图多重匹配(Dinic求二分图最大多重匹配)

    #1393 : 网络流三·二分图多重匹配 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 学校的秋季运动会即将开始,为了决定参赛人员,各个班又开始忙碌起来. 小Hi和小H ...

  8. swift-UITableView

    import UIKit class FirstVC: UIViewController,UITableViewDelegate,UITableViewDataSource { var tableVi ...

  9. gcc编译命令行依赖库的指定顺序

    gcc链接过程中定义了三个集合:可重定位目标文件集合E.未解析符号集合U和已定义符号集合D,链接基本流程如下: 1) 按命令行指定顺序依次处理每个目标文件和库文件: 2) 如果为目标文件,将其加入集合 ...

  10. CodeIgniter(CI)框架中的验证码

    在CodeIgniter框架中,CI本身自带了验证码,但是查看文档的时候,发现: 需要新建一个表,用来存储验证码信息.因为习惯了session存储验证码信息,所以我把我认为比较好看的验证码应用在了CI ...