簡體   English   中英

如何使用 .NET Core 3 和 Visual Studio 創建 WPF 應用程序

[英]How to create a WPF app with .NET Core 3 and Visual Studio

使用 Visual Studio 2017 使用 .NET Core 3 和 WPF Desktop Pack 創建 WPF 應用程序的正確方法是什么或將是什么?

“新建項目”窗口中是否會有新的項目模板,還是通過 NuGet 或其他方式完成?

Brian Lagunas最近在其網站上發布了 .NET Core 3 入門 – 創建 WPF 應用程序視頻,其中提供了有關如何創建面向 .NET Core 3 的新 WPF 應用程序的詳細說明。

這是它的簡短內容:

  • 安裝 .NET Core 3 和 SDK:

https://github.com/dotnet/core-setup

https://github.com/dotnet/core-sdk

  • 創建面向 .NET Framework 的新 WPF 應用程序。

  • 卸載項目。

  • 通過刪除所有內容並將其替換為以下內容來編輯 csproj 文件:

 <Project Sdk="Microsoft.NET.Sdk.WindowsDesktop"> <PropertyGroup> <OutputType>WinExe</OutputType> <TargetFramework>netcoreapp3.0</TargetFramework> <UseWPF>true</UseWPF> <AssemblyName>MyCore3App</AssemblyName> </PropertyGroup> </Project>
  • 重新加載項目。

  • 構建項目。

  • 如果構建失敗並且您的輸出窗口提到重復屬性,請刪除 Properties 文件夾。

觀看視頻了解更多有價值的信息,並記住 .net Core 3 仍在開發中,這些說明隨時可能變得不准確。 當我意識到影響此過程的任何更改時,我將更新答案。

2018-12-05 更新

.NET Core 3 Preview 1 於昨天發布,以下是公告中的重要部分:

  • Visual Studio 2019 將是支持構建 .NET Core 3 應用程序的版本。

  • Windows 桌面框架現在是開源的,第一波源代碼已經在 GitHub 上可用。

  • 您可以從命令行為 WPF 和 Windows 窗體創建新的 .NET Core 項目。

dotnet 新 wpf

  • 您還可以在 Visual Studio 2019 Preview 1 中打開、啟動和調試 WPF 和 Windows Forms 項目。目前可以在 Visual Studio 2017 15.9 中打開 .NET Core 3.0 項目,但是,它不是受支持的方案(並且您需要啟用預覽)。

  • 上面顯示的 csproj 文件格式仍然有效。

  • dotnet build 現在在生成操作期間將應用程序的 NuGet 依賴項從 NuGet 緩存復制到生成輸出文件夾。 在此版本之前,這些依賴項僅作為 dotnet publish 的一部分進行復制。 此更改允許您將構建輸出 xcopy 到不同的機器。

2019-03-15 更新

最近發布的 Visual Studio 2019 RC 有一個面向 .NET Core 平台的 WPF 和 Windows Forms 項目模板,這使得創建新的 WPF 和 Windows Forms .Net Core 應用程序變得非常容易。

2019-11-04 更新

.NET Core 3.0於 2019 年 9 月 23 日發布。

現在完全支持 WPF,並且 .NET Core WPF App 項目模板在“創建新項目”對話框中可用。

特別感興趣的項目屬性是PublishReadyToRunPublishSingleFileRuntimeIdentifier

這是具有所有三個選項的典型 PropertyGroup 部分的樣子:

<PropertyGroup>
  <OutputType>WinExe</OutputType>
  <TargetFramework>netcoreapp3.0</TargetFramework>
  <UseWPF>true</UseWPF>
  <PublishReadyToRun>true</PublishReadyToRun>
  <PublishSingleFile>true</PublishSingleFile>
  <RuntimeIdentifier>win-x64</RuntimeIdentifier>
</PropertyGroup>

這些選項將使您的 WPF Core 應用程序成為一個完全獨立的 64 位快速啟動可執行文件,可以在任何 64 位版本的 Windows 上運行(如果需要運行時省略 win-x64 運行時標識符)在 Windows x86 上)從任何位置,包括 USB 驅動器。

對於我們所有的 Windows 桌面開發人員來說,關於 WPF Core 的最美妙的事情是,它完全消除了過去所有的“部署藍調”。 您不再需要擔心最終用戶運行的是什么操作系統、目標計算機上可用的 .NET 框架版本是什么,或者用戶是否有足夠的權限來安裝您的應用程序。 您可以分發將從 %LOCALAPPDATA% 文件夾或用戶選擇的任何位置運行的單個文件,它都會正常工作。

由於生成的可執行文件將包含 .NET Core 本身和所有引用的庫,因此這將導致文件相當大,但為您從創建單個自包含可執行文件中獲得的所有好處付出的代價很小。 像這樣發布時,我最近的應用程序是 175 MB,我認為在 2020 年根本不算大。

但是,如果您確實發現文件太大而不適合您的喜好,您可以嘗試使用名為Warp和 PublishTrimmed 屬性的工具,該工具旨在通過分析您的代碼並僅包含應用程序中使用的框架部分來減小文件大小。 但是,這可能會導致排除一些必需的部分,從而導致無法運行的可執行文件,尤其是在您的代碼使用反射的情況下。 Scott Hanselman有一篇很棒的博客文章,詳細介紹了所有這些內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM