当前位置:首页 > 代码 > 正文

uwp源代码(UWP应用程序)

admin 发布:2022-12-19 13:38 106


本篇文章给大家谈谈uwp源代码,以及UWP应用程序对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

关闭了windowdefend还能用uwp应用吗

关闭了windowdefend还可以用uwp应用。在安全卫士里的优化加速里的启动项里,把windowsfirewall和defender等相关服务打开,亦即恢复启动,重启之后思考一下你是否真的需要这些给你帮倒忙的软件。

windowdefend使用uwp应用的技巧

在我的电脑右下角一直出现一个解决PC问题,一个重要信息启用windowsdefender,一条重要信息点开新的窗口后windowsdefender已关闭,再点立即启用后u无法启动服务原因可能是已被禁用或与其相关联的设备没有启动。

通过UWP调用Win32,在NetFramework中报错必须添加对程集WindowsFoundation,无法找到此程序集,且Reshaper工具也无法添加,另外微软Samples中可用的源代码,引用中的Windows有黄色感叹号。

HP热键UWP服务 错误:系统中没有安装HP软件框架。 怎么办?

建议您先检测一下硬盘,

检测方法:开机(或重启)出现HP(或COMPAQ)界面时,不停点击F10进入BIOS,选择Diagnostics,运行Hard Drive Self Test检测硬盘。整个过程需要30到60分钟左右,具体的检测时间也与您的硬盘容量有关,在检测过程中建议您连接好外接电源,保持供电。

(1)如果硬盘检测过程没有报错,结果全部为passed,那么你的硬盘应该没有问题,很有可能是系统出现问题,建议你保存数据文件后,更换其他纯净版系统安装光盘,重新安装操作系统试试。

(2)如果屏幕报错,例ERROR或FAIL等,说明硬盘有问题,建议你将笔记本送到就近的惠普金牌服务中心进行处理。

请用UWP中System.Net.Http的接口HttpClient,用C#写一段从GET中获取COOKIE并应用到POST中的代码,

UWP (通用 Windows 平台) 应用开发者在构建通过 HTTP 与 Web 服务或服务器断点交互的应用时,有多种 API 可以选择。要在一个托管 UWP 应用中实现 HTTP 客户端角色,最常用也是推荐的两种 API 即 System.Net.Http.HttpClient 和 Windows.Web.Http.HttpClient 。 相对于 WebClient 以及 HttpWebRequest 等老旧过时的 API,应当优先选择上述两种 API(尽管出于向后兼容的考虑, HttpWebRequest 的一个小子集在 UWP 中仍然可用)。

很多开发对于 UWP 中的上述两个 API 有着功能异同、如何选择等疑问。本文旨在解答这些疑问并阐明两个 API 各自的用途。

概述

System.Net.Http.HttpClient 这一 API 在 .NET 4.5 中被首次引入,同时也有一个变体以 NuGet 包的形式为 .NET 4.0 以及 Windows Phone 8 Silverlight 应用提供支持。该 API 的目的在于提供一种比老旧的 HttpWebRequest API 更为简单明了的抽象层,以及更为弹性灵活的 HTTP 客户端角色的实现方法。例如,开发者可以通过其提供的链式自定义 handler,拦截每个请求或响应并实现自定义逻辑。直到 Windows 8.1 位置,该 API 的底层都是由纯 .NET 实现的。在 Windows 10 中,该 API 的 UWP 实现已经改为基于 Windows.Web.Http 和 WinINet HTTP 协议栈实现了。

另一方面, Windows.Web.Http.HttpClient API 则在 Windows 8.1 被引入,并同时可用于 Windows Phone 8.1。创建这一 API 的最大动因在于整合各种 Windows 应用开发语言可用的 HTTP API,使一种 API 能够提供这些语言各自 API 的全部特性。其中大部分基础 API 的设计均来源于 System.Net.Http ,而其实现则是基于WinINet HTTP 协议栈。

在 Windows 商店应用中使用上述两种 API时,操作系统版本以及编程语言的支持情况如下:

API 操作系统版本 支持语言

System.Net.Http.HttpClient Windows, Windows Phone 8 以上 仅限 .NET 语言

Windows.Web.Http.HttpClient Windows, Windows Phone 8.1 以上 所有 Windows 商店应用语言

如何选择?

两种 API 在 UWP 中均可用,因而 HTTP 开发者面临的最大问题就是该在应用中选择二者中的哪一种。选择结果要依一些具体因素而定。

你是否需要整合原生 UI 以收集用户凭据、控制 HTTP 患侧读写行为或传递指定 SSL 客户端证书用于验证?如果是,则使用 Windows.Web.Http.HttpClient 。截至撰写本文时,相对于 System.Net.Http API, Windows.Web.Http.HttpClient API 提供了更多对 HTTP 设置的掌控能力。未来 System.Net.Http API 可能也会得到加强以提供这些特性。

你是否要编写跨平台 .NET 代码(通用于 UWP/ASP.NET 5/iOS 以及 Android 平台)?如果是,则使用 System.Net.Http API。使用该 API 编写的代码可以在 ASP.NET 5 以及 .NET Framework 桌面应用程序等其它平台上复用。感谢 Xamarin,如今该 API 也支持在 iOS 和 Android 平台上使用,所以你的代码也可以在这些平台上复用。

对象模型

现在我们已经了解了创建这两个相似 API 的原因以及如何选择的基本原则,接下来深入了解一下它们各自的对象模型。

System.Net.Http

该 API 对象模型的顶级抽象层是 HttpClient 对象。 HttpClient 对象表示 HTTP 协议描绘的客户端-服务端模型中的客户端实体。客户端可以向服务端发送多个请求(由HttpRequestMessage 表示)并接收相应的响应(由 HttpResponseMessage 表示)。每个 HTTP 请求或响应的 entity body 和 content header 由基类 HttpContent 及其派生类 StreamContent 、 MultipartContent 和 StringContent 等表示。这些类型分别代表了不同类型的 HTTP entity body。这些类型均提供了一组 ReadAs* 方法将一个请求或响应的 entity body 读出为字符串、字节数粗或流。

每个 HttpClient 对象底层均有一个 handler 对象表示所有客户端 HTTP 相关设置。你可以从概念上把 handler 理解为客户端底层的 HTTP 栈。它负责把客户端的 HTTP 请求发送至服务器并传回相应的响应。

System.Net.Http API 中默认使用的 handler 类是 HttpClientHandler 。当你创建一个 HttpClient 对象的新实例时——例如,调用 new HttpClient() ——一个 HttpClientHandler 对象都会自动创建,并携带默认的 HTTP 栈设置。如果你想要修改缓存行为、自动压缩、凭据或代理等设置,你可以自己创建 HttpClientHandler的实例,修改其相应属性再传递给 HttpClient 的构造函数:

HttpClientHandler myHandler = new HttpClientHandler();

myHandler.AllowAutoRedirect = false;

HttpClient myClient = new HttpClient(myHandler);

链式 Handler

System.Net.Http.HttpClient API 设计中的一个关键优势就是可以在一个 HttpClient 对象底层插入自定义 handler,并创建一条 handler 对象链。假设你要构建一个需要从 Web 服务查询数据的应用。你编写了自定义逻辑来处理从服务器返回的 HTTP 4xx(客户端错误) 和 5xx(服务端错误) 错误,并发起更换端点或添加用户凭证等重试动作。而你也想要将这部分与 HTTP 相关的工作与其它处理 Web 服务返回数据的业务逻辑分开。

要实现上述需求,可以从 DelegatingHandler 派生一个新的 handler 类(例如 CustomHandler1),再创建一个派生类的实例传递给 HttpClient 的构造函数。 DelegatingHandler 类的 InnerHandler 属性用于指定链中的下一个 handler ——举例,你可以借此把另一个自定义 handler (例如 CustomHandler2)添加到链中。而在最后一个 handler 里,你可以把 InnerHandler 设置为一个 HttpClientHandler 实例,该实例会将请求传递给系统的 HTTP 栈。过程如下图所示:

完成上述需求的示例代码:

public class CustomHandler1 : DelegatingHandler

{

// 此处放置构造和其它代码。

protected async override TaskHttpResponseMessage SendAsync(

HttpRequestMessage request, CancellationToken cancellationToken)

{

// 在此处理 HttpRequestMessage 对象。

Debug.WriteLine("Processing request in Custom Handler 1");

// 一旦前步骤完成,调用 DelegatingHandler.SendAsync 继续将其传递至 inner handler

HttpResponseMessage response = await base.SendAsync(request, cancellationToken);

// 在此处理返回的 HttpResponseMessage 对象。

Debug.WriteLine("Processing response in Custom Handler 1");

return response;

}

}

public class CustomHandler2 : DelegatingHandler

{

// 内容与 CustomHandler1 类似

}

public class Foo

{

public void CreateHttpClientWithChain()

{

HttpClientHandler systemHandler = new HttpClientHandler();

CustomHandler1 myHandler1 = new CustomHandler1();

CustomHandler2 myHandler2 = new CustomHandler2();

// 将两个 Handler 链接在一起。

myHandler1.InnerHandler = myHandler2;

myHandler2.InnerHandler = systemHandler;

// 使用链中的顶级 Handler 创建客户端对象。

HttpClient myClient = new HttpClient(myHandler1);

}

}

注意:

如果你打算向一个远程服务器端点发送请求,通常链中的最后一个 handler 都是 HttpClientHandler ,该 handler 负责实际通过系统的 HTTP 栈发送请求并接收响应。 若非如此,你可以使用一个自定义 handler 模拟发送请求以及接收模拟响应的过程。

在将请求传递到下一个 handler 之前,或在前一个返回响应之前添加处理逻辑可能会带来性能损失。在这类场景中最好避免开销昂贵的同步操作。

有关链式 Handler 的更多信息,可以参阅 Henrik Nielsen 撰写的 文章 (注意该文中谈及的 API 是指 ASP.NET Web API 版本的,与我们在本文中谈论的 .NET Framework 版略有区别,不过有关链式 handler 的概念是通用的。)

Windows.Web.Http

Windows.Web.Http API 的对象模式与上文中描述的 System.Net.Http 非常类似,它也有客户端实体、handler(该命名空间内叫做 "filter",即过滤器)以及在客户端与系统默认 filter 之间插入自定义逻辑等概念。

本 API 中大部分类型与 System.Net.Http 的对象模型类似:

HTTP 客户端角色表示 System.Net.Http 类型 对应 Windows.Web.Http 类型

客户端实体 HttpClient HttpClient

HTTP 请求 HttpRequestMessage HttpRequestMessage

HTTP 响应 HttpResponseMessage HttpResponseMessage

HTTP 或响应的 entity body HttpContent IHttpContent

HTTP 内容的字符串、流等表示 StringContent, StreamContent and ByteArrayContent HttpStringContent, HttpStreamContent and HttpBufferContent respectively

HTTP 栈/设置 HttpClientHandler HttpBaseProtocolFilter

用于创建自定义 handlers/filters 的基类/接口 DelegatingHandler IHttpFilter

上文中关于 System.Net.Http API 链式 handler 的讨论亦可用于 Windows.Web.Http API。你可以创建一组链式自定义 filter,传递给 HttpClient 对象的构造函数。

实现常见 HTTP 场景

现在我们来看看一些代码片段,分别使用两种 HttpClient API 实现常见 HTTP 场景。更多细节和指导可以查阅 Windows.Web.Http.HttpClient 和 System.Net.Http.HttpClient 的 MSDN 文档。

修改头

System.Net.Http:

修改 HttpClient 实例发出的所有请求的头:

var myClient = new HttpClient();

myClient.DefaultRequestHeaders.Add("X-HeaderKey", "HeaderValue");

myClient.DefaultRequestHeaders.Referrer = new Uri("");

只修改特定请求的头:

HttpRequestMessage myrequest = new HttpRequestMessage();

myrequest.Headers.Add("X-HeaderKey", "HeaderValue");

myrequest.Headers.Referrer = new Uri("");

Windows.Web.Http:

上述代码同样适用于 Windows.Web.Http API。

注意:

部分头项目是集合,修改需要通过 Add 和 Remove 方法实现。

HttpClient.DefaultRequestHeaders 属性表示在应用层次上,默认头集合是否会添加到请求中。由于请求是由系统的 HTTP 栈处理的,所以请求实际发送出去前,一些附加头可能会添加到请求中。

超时设置

System.Net.Http:

在 System.Net.Http API 中,有两种方式设置超时。要为客户端发出的所有请求设置超时,使用:

myClient.Timeout = TimeSpan.FromSeconds(30);

要为单个请求设置超时,则使用 CancellationToken:

var cts = new CancellationTokenSource();

cts.CancelAfter(TimeSpan.FromSeconds(30));

var httpClient = new HttpClient();

var resourceUri = new Uri("");

try

{

HttpResponseMessage response = await httpClient.GetAsync(resourceUri, cts.Token);

}

catch (TaskCanceledException ex)

{

// 因超时取消请求的逻辑

}

catch (HttpRequestException ex)

{

// 处理其它可能异常的逻辑

}

Windows.Web.Http:

Windows.Web.Http.HttpClient 类型中没有超时属性可用,因此你必须向上文一样使用 CancellationToken 实现超时处理。

使用身份验证凭据

System.Net.Http:

为了保护用户的凭证信息,HTTP 栈默认不会向发出的请求添加任何验证凭据。要使用指定用户的凭据,可以使用如下方法:

var myClientHandler = new HttpClientHandler();

myClientHandler.Credentials = new NetworkCredential(myUsername, myPassword);

Windows.Web.Http:

对于 Windows.Web.Http API,默认情况下如果发出的请求访问了要求用户验证的资源,系统会弹出一个 UI 对话框。要关闭 UI 对话框,可以把 HttpBaseProtocolFilter 的 AllowUI 属性设置为 false。要使用指定用户的凭据,可以使用如下方法:

var myFilter = new HttpBaseProtocolFilter();

myFilter.ServerCredential = new PasswordCredential(“fooBar”, myUsername, myPassword);

注意:

在上述示例中, myUsername 和 myPassword 两个字符串变量可以来自用户通过 UI 输入或者应用自身的配置。

在 UWP 应用中, HttpClientHandler.Credentials 只能设置为 null、 DefaultCredentials 或一个 NetworkCredential 类型的对象实例。

使用客户端证书

System.Net.Http:

为保护用户的凭据信息,该 API 默认不会向服务器发送任何客户端证书。要使用客户端证书用于验证,使用如下方法:

var myClientHandler = new HttpClientHandler();

myClientHandler.ClientCertificateOptions = ClientCertificateOption.Automatic;

Windows.Web.Http:

使用该 API 进行客户端证书验证有两种选择——默认方式是弹出一个 UI 让用户选择证书;另一种选择是在代码中自行指定一个客户端证书:

var myFilter = new HttpBaseProtocolFilter();

myFilter.ClientCertificate = myCertificate;

注意:

无论使用哪种 API ,要使用客户端证书,你必须先根据 这些步骤 将证书添加到应用的证书储存区。拥有企业权限的应用也能够使用用户的“我的”储存区中已经存在的证书。

HttpClientHandler.ClientCertificateOptions 属性允许两种值: Automatic 和 Manual 。设置为 Automatic 则会从应用的证书储存区自动选择最佳匹配的证书用于验证。设置为 Manual 则会保证在服务器请求前,任何客户端证书都不会被发送。

代理设置

默认情况下,两种 API 的代理设置都会自动根据 Internet Explorer/ Microsoft Edge 的设置自动为所有 HTTP 调用进行配置。这使得应用在用户通过代理连接网络时也能正常工作。两种 API 都没有提供任何方法为应用指定一个自定义代理。然而你可以通过在 System.Net.Http 中设置 HttpClientHandler.UseProxy 为 false 或在 Windows.Web.Http 中设置 HttpBaseProtocolFilter.UseProxy 为 false 来禁止使用默认代理配置。

Cookie 处理

默认情况下,两种 API 都会保存服务器发来的 cookie 数据,并自动附加到随后产生的请求对相同应用容器 URI 的请求中。对特定 URI 的 cookie 也能读取或添加自定义 cookie 数据。最后,两种 API 都提供了选项来关闭向服务器发送 cookie:对于 System.Net.Http ,将 HttpClientHandler.UseCookies 设置为 false;对于 Windows.Web.Http ,设置 HttpBaseProtocolFilter.CookieUsageBehavior 为 HttpCookieUsageBehavior.NoCookies 。

System.Net.Http:

为客户端生成的所有请求添加一个 cookie:

// 手动添加cookie。

myClientHandler.CookieContainer.Add(resourceUri, myCookie);

为单个请求添加 cookie:

HttpRequestMessage myRequest = new HttpRequestMessage();

myRequest.Headers.Add("Cookie", "user=foo; key=bar");

查看给定 URI 的所有 cookie:

var cookieCollection = myClientHandler.CookieContainer.GetCookies(resourceUri);

Windows.Web.Http:

为客户端生成的所有请求添加一个 cookie:

// 手动添加cookie。

filter.CookieManager.SetCookie(myCookie);

上文中为单个请求添加 cookie 的示例同样适用于 Windows.Web.Http API。

管理 cookie:

// 获取给定 URI 的所有 cookies。

var cookieCollection = filter.CookieManager.GetCookies(resourceUri);

// 删除一个 cookie。

filter.CookieManager.DeleteCookie(myCookie);

注意:

在 Windows.Web.Http API 中,对于应用容器内的 Windows.Web.Syndication 、 Windows.Web.AtomPub 以及 XHR 等几个使用 WinINet 栈实现的网络 API之间,cookie 管理器内的 cookie 数据是共享的。因此,之前一个 Syndication API 调用通过服务器响应获得 cookie 可能会被添加到相同应用容器内之后发送给同一服务器的 HttpClient 请求里。

每服务器最大连接数

默认情况下,操作系统底层的 HTTP 栈对每个服务器最多使用六个连接。 System.Net.Http 的 HttpClient API没有提供任何方法控制最大连接数。对于 Windows.Web.Http API,可以使用如下方法设置:

var myFilter = new HttpBaseProtocolFilter();

myFilter.MaxConnectionsPerServer = 15;

无广告、不臃肿!24 款超好用的 UWP 应用打包送给你

微软在 Windows 10 系统中推出了称为通用 Windows 平台(UWP)的新架构,UWP 架构的问世主要功效是提供了统一跨平台(个人电脑和手机端)的 Windows 应用程序体验。

与常规的 Win32 应用程序相比,UWP 应用有以下几方面的使用优势:

UWP 应用在安全性、安装管理的便捷性以及跨平台上均有着不错的优势,所以如果你是 Windows 10 用户,强烈建议尝试使用 UWP 应用。

对于刚接触 UWP 应用的用户来说,有可能会遇到下面几个使用困惑:

针对以上的问题,结合我的经验,梳理了三点使用技巧。

默认情况下,Windows 10 用户只能在 Windows Store中下载 UWP 应用,我认为这种统一安装的方式保障了安装应用的安全性,也节省了用户找安装包的时间精力。使用微软帐号登录商店后,安装应用的 历史 记录都会绑定在这个帐号里,方便了碰到重装系统、更换电脑后,实现快速安装使用过的应用。

如果你是开发/测试人员,其实可以在 Windows 10 中手动安装 .appx 文件(即离线安装 UWP 应用),直接安装 .appx 文件的具体步骤:

1、开启「旁加载应用」功能,打开 Windows 10 系统的设置应用,依次点击「更新和安全 - 开发者选项」,选中右边栏的「旁加载应用」;

2、打开旁加载应用功能后,双击 .appx 文件即可直接安装 UWP 应用,或者使用 PowerShell 命令安装 UWP 应用,命令实例: Add-AppxPackage file_path 。

在安装了大量 UWP 应用后,一定会面临如何管理的难题,善用 Windows 10 开始菜单和动态磁贴功能有助于更高效地使用 UWP 应用。

所有安装好的 UWP 应用都会放在 Windows 10 系统开始屏幕中的应用列表中,如果你明确知道要打开哪一款应用的话,按照首字母方式即可轻松找到目标应用(开始菜单的搜索功能同样可以快速找到应用)。

除了应用列表外,合理利用开始屏幕右半部分的磁贴区域,进一步提升高效使用 UWP 应用。为了增加开始菜单的显示区域,可依次导航到「设置 - 个性化 - 开始」,打开「使用全屏开始屏幕」,让整个开始菜单占据全屏区域。

打开任一应用的右键菜单选项,选择「固定到开始屏幕」,目标应用即可出现在磁贴区域,用户对其需要分组或者排序,鼠标左键按住应用图标,就可以随意拖放,并且可以参考手机 Launcher 建立指定用途/应用场景的文件夹,将同类的应用放到这个特定的文件夹里。

部分 UWP 应用还支持动态效果,开启后会在应用图标方块内显示某些特定的内容,用户无需点击打开应用即可预览应用内的信息。比如微软的天气应用,开启动态磁贴功能,可直接预览当地的天气状况。

由于 UWP 应用被限制在称为 App Container 的虚拟沙箱环境下运行,导致应用无法访问 localhost,即使电脑开启了代理,也会让 UWP 应用无法访问本地代理服务器,会出现「当前无法连接到你所需的服务,请检查网络连接或稍后重试」。

利用 Windows 10 系统自带的 CheckNetIsolation.exe 工具或者第三方软件 Fiddler 可以为 UWP 应用解除网络隔离。

打开系统的注册表编辑器,定位路径 HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\AppContainer\Mappings ,注册表编辑器左侧列出了已安装的应用 SID 值命名的文件夹,右边 DisplayName 项就是应用名称,左边记录目标应用的 SID 值。

打开 CMD 命令面板,输入如下命令,SID就是前面获得的 SID值,命令行窗口提示「完成」,表示已经解除了目标应用的网络隔离。

CheckNetIsolation.exe loopbackexempt -a -p=SID

使用 Fiddler 软件的话,选择顶部菜单栏的「WinConfig」,在弹出窗口中勾选需要排除网络隔离的应用,最后点击「Save Changes」即可。

用户经常使用一些音视频类的 UWP 应用会产生大量的缓存文件,导致系统盘空间越来越吃紧,使用应用本身的重置功能可以减少缓存,但同时会还原应用的默认设置。还有一种方法是手动打开应用文件目录,删除位于 Packages\AC 文件夹的配置文件和缓存文件(INetCache、INetCookies 和 INetHistory),但这种方法略显繁琐。

为了实现一键清理所有缓存,使用组合键 Win + R 打开运行窗口,输入 wsreset ,回车运行后将自动弹出微软应用商店的界面,稍等一会就清理成功了。

前面介绍了 UWP 应用的概念、使用优势和技巧,相信大家对 UWP 应用已经有了比较清晰的认识,下面按照功能分类,推荐一波优秀的 UWP 应用,欢迎大家试用,并在留言区说说你的体验。

网易云音乐

网易云音乐 UWP 版在功能上和 PC 版差不多,其响应速度和体验都有着不错的表现,并且结合了 Windows 10 系统特性,可通过音量键和任务栏图标同时控制播放,甚至可以通过 Cortana 助手调用云音乐进行听歌识曲。

前往 Windows 应用商店免费下载网易云音乐。

Grover Podcast

Grover Podcast 被誉为 Windows 10 上最好的播客管理软件,支持 iTunes 搜索播客,用户还能通过导入、导出 xml 文件从其他平台导入订阅的 Podcasts 节目。

前往 Windows 应用商店免费下载 Grover Podcast。

爱奇艺

与 Web 网页端相比,爱奇艺 UWP 版本最大的特点就是无广告!

前往 Windows 应用商店免费下载爱奇艺。

VLC

VLC 是一款可移植、自由且开源的跨平台媒体播放器、流媒体服务器,除了支持大部分视频和音频格式,还支持字幕和流媒体协议在线点播。UWP 版尚未完整实现桌面版的全部功能,比如不支持播放 DVD 或蓝光光盘。

前往 Windows 应用商店免费下载 VLC。

ACG 播放器

ACG 播放器本身作为音视频播放工具,支持全面的音频视频格式,据说在播放中还能为笔记本电脑省电、较少发热。ACG 另一特色是提供酷炫音乐 EQ 动画可视化效果、艺术字幕,为视频播放过程中玩出花样。

前往 Windows 应用商店免费下载 ACG 播放器,内购可移除广告(费用 18 元)。

MyerSplash

MyerSplash 应用内的壁纸大部分来源于知名的无版权壁纸资源网站 Unsplash,每日壁纸推荐功能有来自开发者挑选的 Unsplash 壁纸以及开发者自己摄影作品。而且支持自动后台更新桌面壁纸和锁屏壁纸。

前往 Windows 应用商店需付费下载 MyerSplash(费用 7 元)。

Splash!

前往 Windows 应用商店免费下载 Splash!。

Sketchable

Sketchable 是一款专业的绘图应用,支持 Surface Dial硬件调色操作,软件提供了多种画笔工具,官方宣称采用了 GPU 加速让绘图交互更流畅,完成绘图后可导出包含图层的 PSD 文件。

前往 Windows 应用商店免费下载 Sketchable,部分功能需内购解锁(费用 179 元)。

Assetizr

Assetizr 是一款简单的图片编辑应用,提供了更改尺寸、压缩图片、重命名的功能,支持 JPEG, PNG、TIFF、BMP、GIF、WEBP 图片格式。

前往 Windows 应用商店免费下载 Assetizr。

Snipaste

Snipaste 提供强大易用的截图、贴图以及图片标注功能,在截图过程中可以方便添加文本、箭头、马赛克等标注,还能将截图内容直接固定在屏幕上。用户熟悉应用内置的快捷键后,一定能快速提升截图的操作效率。

前往 Windows 应用商店免费下载 Snipaste,还有付费专业版(费用 99 元)。

Lunacy

Lunacy 实现了在 Windows 上也能查看和编辑 Sketch 文件,较完整地支持图层、形状和文字显示,即使遇到缺少字体的问题,应用也会友好地提醒使缺失字体,实现一键前往 Google 搜索对应字体。Lunacy 同时提供了编辑 Sketch 文件的功能,让 Windows 用户添加文本、图形和调整元素的颜色、透明度等细节操作。

前往 Windows 应用商店免费下载 Lunacy。

Newsflow

Newsflow 是一款 RSS 阅读器,用户可在应用内直接搜索订阅源,或者手动添加订阅地址,设置通过 OPML 格式文件导入导出相关订阅。Newsflow 内置稍后读和收藏夹功能,方便用户下次精读。

前往 Windows 应用商店免费下载 Newsflow,如果你同时使用 Feedly 阅读器,可以选择购买Newsflow + Feedly(费用 35 元),用于同步两款应用的设置。

Latermark for Pocket

Latermark for Pocket 是一款稍后读服务 Pocket 的第三方客户端,提供了批量编辑阅读条目、高级筛选器,并且利用 Windows 系统特性可通过分享菜单快速将网页添加至 Pocket 应用中。

前往 Windows 应用商店免费下载 Latermark for Pocket,提供内购移除广告(费用 21 元)。

Book Bazaar Reader

Book Bazaar Reader 是一款支持 EPUB、MOBI、PDF、FB2、TXT 格式的电子书阅读器,除了本地电脑导入电子书外,应用还内置来自 Guttenberg、ManyBooks 等多个开放式出版平台提供的电子书资源。阅读体验上,Book Bazaar Reader 提供了字体调整、页面格式、夜间阅读、目录列表等多个控制选项,用户也能够使用书签、颜色高亮、添加笔记的方式做好各种编辑操作。

前往 Windows 应用商店免费下载 Book Bazaar Reader,提供内购移除广告(费用 71 元)。

Todoist

Todoist 是一款知名的待办任务事项管理工具,UWP 版提供了较全面的功能,包括待办事项提醒、共享,设置不同项目的子任务、优先级别,强大的任务过滤器功能,结合 Windows 系统的通知中心功能,即时提醒各种事项。

前往 Windows 应用商店免费下载 Todoist,提供内购解锁高级版(费用 279 元/年)。

纸书科学计算器

前往 Windows 应用商店免费下载 纸书科学计算器。

EarTrumpet

EarTrumpet 是一款系统音量控制工具,可为不同应用设置单独的音量大小,让你不再为听歌、看视频等不同应用之间和使用场景下频繁调整系统时间大小。

前往 Windows 应用商店免费下载 EarTrumpet。

8-Zip

8-Zip 支持打开和创建多种格式的压缩包,内建了查看器与播放器,直接在应用中打开压缩包内的文件,包括播放音乐和视频文件、显示图片和文本类型的文件。结合 Windows 10 系统特性,8-Zip 支持 Windows Hello 解码压缩文档,将压缩包内容分享给联系人、OneNote、OneDrive 和邮件方式。

前往 Windows 应用商店免费下载 8-Zip,还有付费高级版(费用 14 元)。

Ditto Clipboard

Ditto Clipboard 是一款免费的管理剪贴板,如果你经常需要输入一些重复的内容,那么这款工具一定能够提升复制粘贴的效率。Ditto Clipboard 提供分组管理、快捷键激活以及强大的导出功能,都能够让文字工作者解放大量繁复的操作。

前往 Windows 应用商店免费下载 Ditto Clipboard。

QuickLook

QuickLook 为 Windows 平台带来了空格预览文件的解决方案,用户无需关联应用程序,即可通过空格快捷键快速预览文件内容。

前往 Windows 应用商店免费下载 QuickLook。

Spaceketeer

Spaceketeer 用扇形图的展现形式帮助用户直观了解每个文件占用硬盘空间的大小和大致比例,内圈部分表示根目录,外圈代表文件目录最深入的部分,并且提供了快速复制文件路径、打开文件资源管理器、快捷键 F12 查看属性。

前往 Windows 应用商店下载 Spaceketeer售价 71 元。

微软家出品的应用合辑

除了以上 21 款值得一试的 UWP 应用外,微软自家多款优秀的软件也推出了 UWP 版本,让用户再次充实好看使用的工具箱。

Microsoft To-Do是一款轻量智能的待办清单应用,多平台同步特性让用户快速查看待办事项。在今年三月份的更新中增加了新增多账号登录、附件搜索、剪切板复制粘贴截图并上传的新功能。

必应词典是微软官方出品的英汉/汉英词典,提供了单词查询、翻译、生词本的基础功能外,还有原文赏析、单词挑战、词汇量测试、扩展词典等适合语言进阶者的需求,结合 Cortana 可语音调用词典实现快速翻译。

Sticky Notes是一款支持云同步的便签应用,提供简单便捷的笔记功能,多彩的便签纸设计也让这款应用增添了吸引力。

以上 3 款微软出品应用均可免费下载。

求助,如何UWP后台代码中获取控件属性

不用runat="server"的话,在后台代码可以这样写:Request.Form["txtName"].ToString();就可以获得输入框的值了。因为你的输入框是HTML的,加了runat="server"就是服务器控件了,那还不如干脆用VS提供的textbox控件呢,所以别做这种四不像的事

如何入门 Windows 10 的UWP应用开发

Win10通用平台

我 通所说UWP即Universal Windows Platform意通用Windows平台针该平台发应用同运行种同类型Win10设备包括手机、平板、PC(笔记本台式 机)甚至Xbox One及Hololens各种物联网设备

通用实质源代码通用发者需要针同平台设备编译同版本其实通用应用概念WP8.1已诞Win10更进步逻辑代码UI代码都程度共用

发框架语言

段间甚至现Windows桌面平台较流行发式便使用微软提供MFC框架及WinForm/WPF框架前者

关于uwp源代码和UWP应用程序的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/8909.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载