M5: 使用StorageFile
2015-11-24 17:25
260 查看
本小节介绍UWP中的文件操作,使用到了
在
然后,用鼠标在
使用关键字
定义
然后,通过文件流方式将StorageFile传给BitmapImage,再将BitmapImage传给ImageBrush,进而设置为gridMsg的背景。
其中, IRandomAccessStream来自于
FileOpenPickerAPI(在
Windows.Storage.Pickers中)。本例中,单击打开文件按钮,然后在图片库中选择照片,将选择的照片用作贺卡背景。学完本节课程,您能够使用
FileOpenPicker来打开设备文件。留个小作业,请探索使用
FileSavePicker将文件保存到设备。
在
MainPage.xaml页面,定位到abtnOpenFile控件,定义单击事件为
OpenFile_Click。
<AppBarButton x:Name="abtnOpenFile" Icon="Pictures" Label="Open" Click="OpenFile_Click"/>
然后,用鼠标在
OpenFile_Click中任何位置单击, 在键盘上按下F12键,进入
Code Behind代码。
使用关键字
async将OpenFile_Click修改为异步方法。
private async void OpenFile_Click(object sender, RoutedEventArgs e) { }
定义
FileOpenPicker对象, 将文件浏览位置设置为
PickerLocationId.PicturesLibrary, 将浏览文件类型设置为.jpg和.png,代码如下:
FileOpenPicker fileOpenPicker = new FileOpenPicker(); fileOpenPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary; fileOpenPicker.FileTypeFilter.Add(".jpg"); fileOpenPicker.FileTypeFilter.Add(".png"); StorageFile photo = await fileOpenPicker.PickSingleFileAsync();
然后,通过文件流方式将StorageFile传给BitmapImage,再将BitmapImage传给ImageBrush,进而设置为gridMsg的背景。
if (photo == null) return; BitmapImage bitmapImage = new BitmapImage(); using (IRandomAccessStream stream =await photo.OpenAsync(FileAccessMode.Read)) { bitmapImage.SetSource(stream); } ImageBrush imageBrush = new ImageBrush(); imageBrush.ImageSource = bitmapImage; gridMsg.Background = imageBrush;
其中, IRandomAccessStream来自于
Windows.Storage.Streams,用于以流的形式访问文件。
相关文章推荐
- Wireshark实战分析之IP协议(三)
- C语言实现链表之双向链表(八)删除尾结点
- SourceTree GitLab添加SSH认证
- 网站开发进阶(二十二)HTML UI知识汇总(更新中...)
- ImageLoader下载的图片在手机SdCard上进行读写操作
- gz文件合并解压
- 网站开发进阶(二十二)HTML UI知识汇总(更新中...)
- 运行Python2.x程序报编码错误的解决办法-UnicodeDecodeError: 'ascii' codec can't decode byte 0xb7 in position 7: ordina not in range(128)[0m
- Junit3断言
- [转]清理WordPress 数据库冗余数据
- M4: 使用CommandBar
- 性能调优之MYSQL高并发优化下
- SQL中的IF ELSE(CASE语句的使用)
- 在ubuntu上安装nginx
- Xpose之应用,微信数据修改
- Quartz
- github上的安卓开源库汇总
- Android高手应该精通哪些内容?
- M3: 发送邮件附件(2)
- sql: sybase与oracle中insert into select和select into的用法