Wp8数据绑定与独立存储空间 数据绑定为基于 Silverlight 的应用程序提供了一种显示数据并与数据进行交互的简便方法。 数据的显示方式独立于数据的管理。 UI 和数据对象之间的连接或绑定使数据得以在这二者之间流动。 绑定建立后,如果数据更改,则绑定到该数据的 UI 元素可以自动反映更改。 同样,用户对 UI 元素所做的更改也可以在数据对象中反映出来。 首先我们要定义一个类,为我们的数据绑定做一个暂时的中转。 类或结构的声明类似于蓝图,用于运行时创建实例或者对象,如果我们定义了一个名为note的类或结构,那么note为类的名称,如果声明并初始化 note 类型的变量 a,则a称为note的对象或实例,我们可以同时创建多个note类型的实例,每个实例在其属性中都可以独立储存不同的值。
然后我们要为前台设置数据模板 这里我们要用到listbox “ListBox”控件允许用户从预定义的列表中选择一个或多个项。 这里我们要为listbox进行数据绑定,首先要创建数据模板,让每一组数据都有一定的排列样式。
我们还需要新建一个页面 叫做编辑页面 首先做下UI,这里我们要用到Blend Using 在程序代码过中,使用using,可以在using结束时,回收所有using段内的内存。
然后要处理textblock事件
当文本变化自动保存。
首先我们我们要用到的是独立数据存储空间 在程序代码过中,使用using,可以在using结束时,回收所有using段内的内存。 再这里我们要用到的是isolatedstoragefile 创建一个引用。来访问我们需要的独立存储空间 再创建一个操作流说明白我们从东土大唐来到西天去去经… 我们要说明我们的去向,调用打开文件 这个方法,再这里我们可以看到,这个小框框提示需要输入什么数据。我们要创建或者打开 这个标题为名的文件,文件模式设置为 打开或者创建,如果文件不存再就创建,设置权限,读写。 然后我们要定义一个流写入器 把我们刚刚的操作流传入这个创建方法。 线性写入我们要记入这个文本。最后记得关掉写入流。
然后我们创建一个application bar 可以放一些按钮 绑定事件 分别做两个按钮 其中一个退出按钮 这个按钮需要带保存功能。 还有个是删除按钮。首先也是创建一个isolatedstoragefile 直接使用删除方法即可。 文件都保存了,那么我们需要去main page中重写OnNavigatedTo事件
首先我们要写一个note类都列表,来储存我们每个note类。 然后还是要引用 isolatedstoragefile 再页面的最前我们定义一个filename_list 数组。数组是一种数据类型,可以一个变量中独立储存多个不同的内容,在其名称后面括号中存放着下标,来区分每个独立内容的位置。 我们通过getfilenames来获得每个独立储存文件的名称。然后让 filename= iso.getfilename 定义一个int I 来获得数组长的 然后我们要写一个for循环 int 一个_i=0,如果_i小于i那么,执行主代码块,最后执行i++ 再判断_i<i,再进行主体,再执行i++直到不满足条件时停止 如果满足条件,我们再次引用isolatedstorageflie 去取出这个文件名对应的文件内容 使用流阅读器取出内容 然后再note这个列表中加入一个新的匿名note类。 在循环的后面绑定数据即可
在是application bar的部分 然后是hyperlinkbutton click事件绑定 应为我们通过数据绑定绑定数据,一个列表中有多个hyperlinkbuuton,那么每一个button都有独立的处理逻辑是不现实的 所以这里我们要用到路由事件,首先后台定义一个hyperlinkbutton通过这个方法找到是哪个hyperlink被点击,激活改事件,让filename = 激活的这个控件的content 跳转到编辑页面,通过页面传值,第二个页面通过这个值,找到这个文件 从而进行编辑 重写 EDIT OnNavigatedTo事件 我们需要通过Navigation context 字典来查找这个值是否存在。 如果存在而且不是空的那么取出数据 进行编辑
Ok大功告成