Windows 8开发 WinRT APP使用其他关联应用程序打开文件
在WinRT开发中可以调用其他的应用或者桌面程序来打开文件,这和WP7时代固定的几个Launcher相比,功能性更强。
直接上代码,简单明了:
public void OpenFile(StorageFile file, bool withPicker) { if (file != null ) { if (withPicker) { //请用户选择打开方式 var options = new LauncherOptions { DisplayApplicationPicker = true }; options.UI.PreferredPlacement = Placement.Below; Launcher.LaunchFileAsync(file, options); } else { //直接使用默认关联程序打开 Launcher.LaunchFileAsync(file); } } } |
需要给Launcher引入命名空间 using Windows.System;
关于LauncherOptions,有以下几个属性:
ContentType :对网络上的URL设置文件类型;
DisplayApplicationPicker :是否显示选择打开方式列表;
FallbackUri:没有对应的打开方式,没有处理文件类型或协议的应用程序时,用户应跳转到浏览器的URI值;
PreferredApplicationDisplayName:没有对应的打开方式,没有处理文件类型或协议的应用程序时,用户安装的应用程序在存储区中的显示名称;
PreferredApplicationPackageFamilyName:没有处理文件类型或协议的应用程序时,用户安装的应用程序在存储区中的包系列显示名称的值;
TreatAsUntrusted:是否显示警告提示用户,让用户再次确认打开;
UI:启动应用程序时默认的界面选项;
需要注意的是,由于WinRT APP的文件系统并非传统桌面的文件系统(尽管是传统桌面文件系统中的一个文件夹,但是由于权限问题,可以理解为类似WP7的独立存储空间),当我们使用这种方式打开一个文件并用第三方程序对该文件进行修改之后,该修改不会对原文件有任何操作。
锦燕云微博 http://www.weibo.com/jinyanyunhttp://www.cnblogs.com/vistach/archive/2012/10/18/Windows8_Win8_WinRT_MetroStyleApps_ModernUIApps_Launcher_LauncherOptions_OpenFile.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
2009-10-18 【转】软件[版本号]的管理规则