Metro Style App开发快速入门 之文件选择总结

1、选择单个文件,FileTypeFilter.Add是添加能访问的文件类型。

private  async void  filePickerBtn_Click( object  sender, RoutedEventArgs e)
{
     FileOpenPicker fileOpenPicker = new  FileOpenPicker();
     fileOpenPicker.FileTypeFilter.Add( ".jpg" );
     fileOpenPicker.FileTypeFilter.Add( ".jpeg" );
     fileOpenPicker.FileTypeFilter.Add( ".png" );
 
     fileOpenPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
     StorageFile file = await fileOpenPicker.PickSingleFileAsync();
     if  (file != null )
     {
         displayTextBlock.Text = file.Name;
     }
}

 2、选择多个文件,并且是任意文件类型

private  async void  filePickerBtn_Click( object  sender, RoutedEventArgs e)
{
     FileOpenPicker fileOpenPicker = new  FileOpenPicker();
     fileOpenPicker.FileTypeFilter.Add( "*" );
     fileOpenPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
     IReadOnlyList<StorageFile> files = await fileOpenPicker.PickMultipleFilesAsync();
     if  (files.Count > 0)
     {
         foreach  (StorageFile file in  files)
         {
             displayTextBlock.Text += file.Name + "\n" ;
         }
     }
}

 

 3、 选择文件夹

private  async void  folderPickerBtn_Click( object  sender, RoutedEventArgs e)
{
     if  (EnsureUnsnapped())
     {
         FolderPicker folderPicker = new  FolderPicker();
         folderPicker.SuggestedStartLocation = PickerLocationId.Desktop;
         folderPicker.FileTypeFilter.Add( "*" );
         StorageFolder storageFolder = await folderPicker.PickSingleFolderAsync();
         if  ( null  != storageFolder)
         {
             displayTextBlock.Text = storageFolder.Name;
         }
     }
}

 FilePicker APIs是不能在snapped状态下使用

bool  EnsureUnsnapped()
{
     //FilePicker APIs不能再snapped状态下使用。
     return  ((ApplicationView.Value != ApplicationViewState.Snapped) || ApplicationView.TryUnsnap());
}

 

4、保存文件

private  async void  SaveFileBtn_Click( object  sender, RoutedEventArgs e)
{
     if  (EnsureUnsnapped())
     {
         FileSavePicker savePicker = new  FileSavePicker();
         savePicker.SuggestedStartLocation = PickerLocationId.Desktop;
         savePicker.FileTypeChoices.Add( "Text" , new  List< string >() { ".txt"  });
         savePicker.FileTypeChoices.Add( "Word Docment" , new  List< string >() { ".docx" , ".doc"  });
         savePicker.DefaultFileExtension = ".txt" ;
         savePicker.SuggestedFileName = "New Document" ;
         StorageFile storageFile = await savePicker.PickSaveFileAsync();
         if  ( null  != storageFile)
         {
             displayTextBlock.Text = storageFile.Name;
         }
     }
}

 选择保存的文件保存自己要求的文件。自定义文件类型和文件名。


本文转自Work Hard Work Smart博客园博客,原文链接:http://www.cnblogs.com/linlf03/archive/2012/03/27/2400416.html,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值