正如前面章节C#语言中所介绍的,文件选取器是应用与系统进行交互的一个接口,通过文件选取器可以在应用中直接与文件系统进行交互,访问不同位置的文件或文件夹,或者将文件存储在指定位置。文件选取器分为对文件进行操作的选取器和对文件夹进行操作的选取器。对文件进行操作的选取器包含文件打开选取器和文件保存选取器,文件打开选取器由FileOpenPicker类表示,用来选取或打开文件;文件保存选取器由FileSavePicker类表示,用来向指定的文件系统位置中保存文件。对文件夹进行操作的选取器由FolderPicker类表示,用于选取文件夹。这三个类均位于Windows.Storage.Pickers命名空间下。
对于上面这三类文件选取器,选取器界面中都含有如下内容:
q 起始位置:初始的文件系统位置。
q 下拉符号:单击下拉符号,可以从下拉列表中选择其他的文件系统位置,例如文档库、桌面、计算机等。
q 返回上一级:用于返回到父级目录。
q 排序:对文件系统位置下的项目进行排序,包括按日期排序和按名称排序。
q 项目列表:文件系统位置下的所有项目。
在应用程序中当需要调用文件选取器时,首先要判断该应用程序是否能够显示它,判断方法是通过Windows.UI.ViewManagement.ApplicationView.value获取应用程序的当前状态,如果应用程序处于贴靠状态,而且通过tryUnsnap函数尝试取消贴靠失败,那么就不能显示文件选取器。代码如下例所示:
function OpenFile() {
var currentState = Windows.UI.ViewManagement.ApplicationView.value; /*获取应用程序的当前状态*/
if (currentState === Windows.UI.ViewManagement.ApplicationViewState.snapped &&
!Windows.UI.ViewManagement.ApplicationView.tryUnsnap()) {
return; /*如果应用程序处于贴靠状态而且未能取消贴靠,则不可以显示文件选取器,函数直接返回,不执行下面的操作*/
}
//创建文件打开选取器对象
var filePicker = new Windows.Storage.Pickers.FileOpenPicker();
//设置文件打开选取器的视图模式
filePicker.viewMode = Windows.Storage.Pickers.PickerViewMode.list;
}