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,依次显示集合中所有文件的名称,否则显示提示信息“没有文件返回”。

  • 相关阅读:
    Agc011_C Squared Graph
    银河战舰
    项链
    无旋Treap
    [PHP] 生成二维码(两种方法)
    [XML] XML格式【有道翻译】API 的数据转化输出
    [YII2] COOKIE的操作使用
    [Laravel框架学习一]:Laravel框架的安装以及 Composer的安装
    [YII2] 修改默认控制器Controller以及默认方法Action
    [YII2] 3步发送邮件,有图有真相!
  • 原文地址:https://www.cnblogs.com/finehappy/p/4213435.html
Copyright © 2011-2022 走看看