【发布时间】:2020-02-09 15:35:45
【问题描述】:
有没有办法将项目转换为 UWP 或者我应该使用其他方法?我需要在 Raspberry Pi 3b 上将用 VS 用 C# 编写的 Windows 窗体应用程序部署到 Windows 10 IOT。我见过提到转换器,但它似乎用于将应用程序发布到 Windows 应用商店。
【问题讨论】:
标签: c# wpf uwp raspberry-pi3 arm64
有没有办法将项目转换为 UWP 或者我应该使用其他方法?我需要在 Raspberry Pi 3b 上将用 VS 用 C# 编写的 Windows 窗体应用程序部署到 Windows 10 IOT。我见过提到转换器,但它似乎用于将应用程序发布到 Windows 应用商店。
【问题讨论】:
标签: c# wpf uwp raspberry-pi3 arm64
您需要将应用程序重写为 UWP 应用程序。您提到的转换器(desktop bridge)将允许打包您的 Windows 窗体应用以存储部署到桌面系统,但不适用于 IoT。
Windows 10 IoT 不包含 WinForms 应用所依赖的 UI 堆栈。这在Windows 10 IoT Core documentation 中有记录(为您的方案添加了重点)
不支持旧版 Win32 UI:IoT Core 不包含用于创建经典 (HWND) Windows 的 API。传统方法,如 CreateWindow() 和 CreateWindowEx() 或任何其他处理 Windows 句柄 (HWND) 的方法不可用。随后,IoT Core 不支持依赖于此类 API 的框架,包括 MFC、Windows Forms 和 WPF
如果您的 UI 和底层逻辑是分开的,那么您可以保留所有或大部分逻辑层(UWP 支持 .Net Standard 2.0),而只需使用 UWP 的 Xaml 堆栈重写 UI。
【讨论】: