zoukankan      html  css  js  c++  java
  • Windows Store App 文件选取器

    使用文件选取器可以访问除上面介绍的“应用程序存储”和“用户库”两个位置之外的本地文件或者文件夹。文件选取器是应用与系统进行交互的一个接口,通过文件选取器可以在应用中直接与文件系统进行交互,访问不同位置的文件或将文件存储在指定位置。

    文件选取器包含文件打开选取器和文件保存选取器,文件打开选取器由FileOpenPicker类表示,用来选择或打开文件,而文件保存选取器由FileSavePicker类表示,用来在保存文件时对文件的扩展名、存储位置等进行选择。这两种选择器的使用方法大致相同,所以下面以文件打开选取器为例进行介绍。

    在使用文件打开选取器的过程中,通过设置文件打开选取器的属性可以自定义文件选取器的视图模式、初始位置或文件类型集合。下面先来介绍一下文件打开选取器的几个常用属性。

    q  ViewMode,获取或设置文件打开选取器用来展示文件或文件夹的视图模式。属性的值由PickerViewMode枚举指定,该枚举包含两个枚举成员,ListThumbnailList表示列表模式,Thumbnail则表示缩略图模式。

    q  SuggestedStartLocation,获取或者设置文件打开选取器显示的初始位置。属性的值由PickerViewMode枚举指定,此枚举有8个枚举成员分别用来表示不同的位置,包括计算机、图片库等,这里不再一一列举。

    q  FileTypeFilter,获取文件打开选取器显示的文件类型集合,这些文件类型可以是“.doc”、“.png”等。

    在了解了常用属性之后,接下来给出一段创建文件打开选取器的示例代码。

    //创建文件选取器

    FileOpenPicker openPicker = new FileOpenPicker();

    //ViewMode属性设为Thumbnail

    openPicker.ViewMode = PickerViewMode.Thumbnail;

    //将文件选取器打开文件的开始位置设置为图片库

    openPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;

    //设置选取器可以选取的文件格式

    openPicker.FileTypeFilter.Add(".jpg");

    openPicker.FileTypeFilter.Add(".jpeg");

    openPicker.FileTypeFilter.Add(".png");

    代码创建了一个FileOpenPicker类的对象openPicker作为文件打开选取器,设置openPickerViewMode属性的值为PickerViewMode.Thumbnail,将视图模式设定为缩略图模式,通过SuggestedStartLocation属性将选择器的初始位置定位在图片库,并使用FileTypeFilter属性获取选择器显示的文件类型集合,然后调用Add方法将需要使用的文件类型添加到集合中。

    创建了文件打开选取器之后,就可以通过文件打开选取器来选择文件了。当需要选择单个文件时,使用文件打开选取器的PickSingleFileAsync方法可以实现。示例代码如下所示:

    Windows.Storage.StorageFile file = await openPicker.PickSingleFileAsync();

    if (file != null)

    {

        // 在页面中显示所选文件名称

    }

    else

    {

        //在页面中提示用户没有文件返回

    }

    代码在获取到选定的文件file后,对file进行了判断,如果file不为空,则显示文件的名称,否则显示“没有文件返回”。

    而当使用文件打开选取器选择多个文件时,需要调用选取器的PickMultipleFilesAsync方法,示例代码如下所示:

    IReadOnlyList<Windows.Storage.StorageFile> files = await openPicker.PickMultipleFilesAsync();

    if (files.Count > 0)

    {

        // 显示所有文件名称

        foreach (Windows.Storage.StorageFile file in files)

        {

            //在页面中显示所选文件名称

        }

    }

    else

    {

        //在页面中提示用户“没有文件返回”

    }

    代码首先获取选定的文件集合files,然后判断集合files的元素个数是否大于0,如果大于0,依次显示集合中所有文件的名称,否则显示提示信息“没有文件返回”。

  • 相关阅读:
    129. Sum Root to Leaf Numbers
    113. Path Sum II
    114. Flatten Binary Tree to Linked List
    112. Path Sum
    100. Same Tree
    300. Longest Increasing Subsequence
    72. Edit Distance
    自定义js标签库
    JS 实现Table相同行的单元格自动合并示例代码
    mysql 高版本only_full_group_by 错误
  • 原文地址:https://www.cnblogs.com/finehappy/p/4213435.html
Copyright © 2011-2022 走看看