13

我已经使用 C++ 对 Windows 8 应用商店应用程序进行了 XAML UI 编程实验。我真的很喜欢开发人员体验、XAML 设计器以及我可以获得具有现代丰富用户界面和高性能的纯本机应用程序这一事实。

我想使用 C++ for Desktop Windows(非商店世界)创建类似的 XAML 应用程序。我该怎么做呢?多年来,我一直在等待 Windows 桌面的原生 UI 堆栈,它比 MFC 更新,并且比直接 Win32/GDI 编程的级别更高。

4

4 回答 4

2

Silverlight 和 WPF 都使用 XAML 和代码隐藏来实现应用程序。两者都未得到维护,但如果您想使用相同的技术,它就在那里。

正如 Jeff McClintock 所提到的,微软已经宣布未来对 Windows 8 的更新将允许应用程序在桌面上运行,但我预计这只是一个窗口更改,应用程序仍将在 Store Apps 运行的受限沙箱中运行. 也许微软会推出另一个基于桌面的 UI 框架,并在三年内支持它,然后将其杀死。

WTL 比 MFC 更新,尽管它的最后一次更新是在六年前。我个人推荐 Qt,因为它允许访问本机 Win32 调用(这样你就可以做 Win32 应用程序通常想做的任何怪事),同时仍然有一个丰富、健壮的 UI 框架可供构建。

于 2014-05-08T21:21:19.307 回答
1

未来对 Windows 8.1 的更新将允许 Windows 8 应用商店应用程序在桌面窗口中运行,并像 Win32 应用程序一样出现在任务栏上。这允许商店应用程序的行为很像桌面应用程序。MS 暗示商店应用程序 XMAL 将在未来某个时候可用于桌面应用程序。

http://www.gottabemobile.com/2014/04/02/microsoft-listens-to-users-start-menu-and-windowed-apps-are-on-the-way/

于 2014-04-24T04:36:18.137 回答
1

Codejock 在 MFC (native C++) 中有一些标记语言支持。

http://www.codejock.com/inc/img/downloads/samples/toolkitpro_markupsample_full.png

图像显示 Codejock 标记示例

于 2014-03-05T06:10:19.603 回答
0

我正在查看的是用于本机 C++ 应用程序的 C++/WinRT,这些应用程序将 WinRT 框架用于 UWP 应用程序,至少对于 Windows 10。有关起点,请参阅Microsoft 开发中心中的 C++/WinRT 。

C++/WinRT 是用于 Windows 运行时 (WinRT) API 的完全标准的现代 C++17 语言投影,实现为基于头文件的库,旨在为你提供对现代 Windows API 的一流访问。借助 C++/WinRT,您可以使用任何符合标准的 C++17 编译器来创作和使用 Windows 运行时 API。Windows SDK 包括 C++/WinRT;它是在版本 10.0.17134.0(Windows 10,版本 1803)中引入的。

该系列的介绍文章继续说:

对于使用 C++ 创作和使用 Windows 运行时 API,有 C++/WinRT。这是 Microsoft 推荐的 Windows 运行时 C++ 模板库 (WRL) 和 C++/CX 的替代品。

我首先使用 C++/CX 开始使用适用于 Windows 10 的 UWP 应用程序,该应用程序使用 Microsoft Visual Studio C++ 扩展ref以及 .NET 世界中的所有 C# 类扩展。

我现在正在使用 Visual Studio 2017 和 C++/WinRT 框架,它使用原生 C++17 功能以及 SDK。我相信您也可以将 C++/WinRT 与最新更新的 Visual Studio 2015 一起使用,更新 3。

Visual Studio 中的扩展和更新还提供了一个包,C++/WinRT,其中包含用于几种不同应用程序类型的几个 Visual Studio 模板。

C++/WinRT 似乎正在进行中。最好将 Visual Studio 2017 与最新的 Windows 10 版本 1803 一起使用,其中包含 SDK 和 XAML 编辑器工作正常。我在使用早期版本的 Windows 10 企业版时遇到了 XAML 编辑器的问题(IT 服务维护自己的更新服务器,并且是一些落后于前沿的版本)。

另请参阅我的问题同步 SDK 与 Windows 10 更新和使用 WinRT 与标准 C++,它具有来自本文C++ - 介绍 C++/WinRT的测试程序的更新版本。

于 2018-06-02T19:32:36.447 回答