Windows Phone 五、配置存储
基本存储形式
本地设置: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 五、配置存储的更多相关文章
- Windows下安装配置MongoDB
Windows下安装配置MongoDB 一,介绍 MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统.在高负载的情况下,添加更多的节点,可以保证服务器性能. MongoDB ...
- redis.windows.conf各项配置参数介绍 (九)
# 默认情况下,redis不是在后台模式运行的,如果需要在后台进程运行,把该项的值更改为yes,默认为no daemonize:是否以后台daemon方式运行 # 如redis服务以后台进程运行的时候 ...
- Citrix 服务器虚拟化之五 Xenserver配置存储
Citrix 服务器虚拟化之五 Xenserver配置存储 XenServer中定义了一个容器称为存储库(SR)来描述一个特定的存储目标存储虚拟磁盘映像(VDI). VDI是一个的磁盘抽象,包含一个 ...
- Maven在Windows中的配置以及IDE中的项目创建
Maven在Windows下的配置 1.Maven下载地址:http://maven.apache.org/download.cgi,下载红框里的版本即可. 2.解压到D盘: 3.修改配置文件sett ...
- Windows平台安装配置mysql数据库
Windows平台安装配置mysql数据库 作者:Eric 微信:loveoracle11g 去下载mysql软件 https://www.mysql.com/downloads/ https://d ...
- (转)windows 下安装配置 Nginx 详解
windows 下安装配置 Nginx 详解 本文转自https://blog.csdn.net/kingscoming/article/details/79042874 nginx功能之一可以启动一 ...
- QT学习之windows下安装配置PyQt5
windows下安装配置PyQt5 目录 为什么要学习QT 命令行安装PyQt5以及PyQt5-tools 配置QtDesigner.PyUIC及PyRcc 为什么要学习QT python下与界面开发 ...
- hyper-v 用户无法再 创建外部配置存储 0x80070005
windows server 2008R2 刚安装的hyper-v 重启过. 修改配置文件到d:\Hyper-V目录下, hyper-V 创建 服务器遇到错误 操作失败 创建外部配置存储:一般性拒绝访 ...
- [转帖]Docker五种存储驱动原理及应用场景和性能测试对比
Docker五种存储驱动原理及应用场景和性能测试对比 来源:http://dockone.io/article/1513 作者: 陈爱珍 布道师@七牛云 Docker最开始采用AUFS作为文件系统 ...
- Windows Server 2008配置系统安全策略
下面学习Windows Server 2008配置系统安全策略 在工作组中的计算机本地安全策略有 用户策略,密码策略,密码过期默认42天 服务账户设置成永不过期,帐户锁定策略,本地策略,审核策略,计算 ...
随机推荐
- BZOJ1098: [POI2007]办公楼biu
从问题可以看出是求补图的连通块及点数 但补图太大.所以考虑缩小规模. 当一个点归属于一个连通块后,它以后就不需要了.所以可以用链表,删去这个点,也就减小了规模. 一个点开始bfs,每个点只会进队一次, ...
- 畅通工程——D
D. 畅通工程 省政府“畅通工程”的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).经过调查评估,得到的统计表中列出了有可能建设公路的若干条道路的 ...
- Self-introduction (自我介绍)
* 姓名,本名不想这样就暴露,Rachel我英文名,不愿意叫算了,直接叫我米蟲就好了. * 性格, 偏执一些,表里不一,表面和善,骨子倔强,我这一生都在追求高逼格,从未间断过 偶尔像个小疯子,有 ...
- C++实现vector
用了双向链表,快排,<<,=,[]重载,还有erase的实现比较好玩 //my Vecter ;T need "operator<" #include <i ...
- stl循环删除
struct st_data { st_data(int i) : id(i) {} int id; }; 对于STL标准序列容器vector/deque/list(以vector为例) 当我们需清空 ...
- myBatis oracle 与mysql自增问题
mysql <insert id="insert" parameterType="Person" useGeneratedKeys="true& ...
- spring装配---处理自动装配的歧义性
一.歧义性 当我们使用spring的注解进行自动装配bean时,如果不仅有一个bean能够匹配结果的话,会抛出NoUniqueBeanDefinitionException: 例如本例中 当sprin ...
- 然并卵,腾讯QQ认证空间又再次关闭申请
昨天发布的腾讯QQ认证空间又开放申请的消息,此消息一放出,大家都去关注认证的事情,而马浩周发现在4月27日下午4-5点,腾讯QQ空间认证又再次关闭页面开放申请的通知,变成了以前停止审核的通知了. 可能 ...
- sql server 游标 写给自己
) --定义两个局部变量 @id @name 全局变量是两个@@name ) Declare Cur Cursor For --定义一个游标 select id,name from temp1 --查 ...
- 【java基础学习】网络编程
网络编程 InetAddress tcp udp