解决 VS2019 中.net core WPF 暂时无法使用 Designer 的临时方法
以下方法來自于微軟github開源項目WPF:
dotnet/samples - WPF Hello World sample with linked files,請放心使用。
此篇文章是上篇文章解決vs2019中暫時無法為.net core WinForms使用 Designer 的臨時方法的姊妹篇,但對WPF而言實現起來比WinForms簡單很多。核心思想還是借殼~
目前.net core下的WPF項目中的XAML可視化設計器(Designer)尚不可用,后續的Visual Studio 2019 Update才會支持該部分的功能。不過目前我們想在vs2019中使用 Designer,有一種臨時解決方法。
可以使用Visual Studio來處理鏈接文件(Link files)的功能,并將其XAML Designer用于Classic Framework (即.net Framework的WPF項目)。
具體的解決方法是在同一個?Solution下創建兩個項目:
用于設計WPF應用程序的.NET Framework應用程序.net Framework 項目)
用于運行WPF應用程序的.NET Core應用程序(.net core項目)
而兩個應用程序(.net core項目和相應.net Framework 項目)都將引用相同的文件,共享一個Assenbly Name。
安裝 vs 2019 professional/enterprise版本
先安裝 vs 2019 professional/enterprise版本,安裝好.net core 3.0 SDK,此時試著創建一個.net core下的 WPF應用,
設置好相關項目名和存放路徑后,會彈出:
在vs的設置里,勾選.NET core下的"Use preview SDK"
設置完,重啟vs才能生效。
使用vs自帶的模板,選擇其中的 .net core WPF 創建Project, 取名為"CoreHiWPF"
在剛創建的Solution中使用vs自帶的模板,選擇其中的.net framework WPF添加新的project,取名為"HiWPF"
此時Solution中的文件目錄為:
更改 .net core WPF項目 CoreHiWPF 的Assembly Name,使得兩個項目一致
右鍵點擊 .net core WPF項目 CoreHiWPF,選擇最后的Properties, 然后將其Assembly Name 改為HiWPF.
接著右鍵該項目,選"Edit CoreHiWPF.csproj"。
按下圖加入如下相應代碼:
Copy <ItemGroup><ApplicationDefinition Include="..\HiWPF\App.xaml" Link="App.xaml">
<Generator>MSBuild:Compile</Generator>
</ApplicationDefinition>
<Compile Include="..\HiWPF\App.xaml.cs" Link="App.xaml.cs" />
</ItemGroup>
<ItemGroup>
<Page Include="..\HiWPF\MainWindow.xaml" Link="MainWindow.xaml">
<Generator>MSBuild:Compile</Generator>
</Page>
<Compile Include="..\HiWPF\MainWindow.xaml.cs" Link="MainWindow.xaml.cs" />
</ItemGroup>
確保 .net core WPF項目 CoreHiWPF 是啟動項目
如果.net core WPF項目 CoreHiWPF 已經高亮,就不用管了。否則,需要選中項目 CoreHiWPF ,右擊后選“Set As Start up project”.
試用 XAML Designer
此時關閉所有打開的文件,雙擊項目`HiWPF中的MainWindow.xaml,就可以在XAML Designer中看到空白的WPF window了。
按需修改MainWindow.xaml和相應的.cs
接下來,我在MainWindow.xaml的Grid中加入了兩行,一行放的是一個含有文本可換行的Label,另一行是Exit按鈕。然后在Exit按鈕上加入了Click事件,在Window上加入了Loaded事件。代碼改完之后,F5運行,最后的界面如下:
項目代碼已推到github,歡迎Fork和star.
傳送門:?.netCore-WPF_Designer?, 如果覺得自己配置起來麻煩,也可以 clone 下來自己體驗一把喔~
原文地址:https://www.cnblogs.com/enjoy233/p/workaround_to_use_the_designer_in_wpf_Core_App.html
.NET社區新聞,深度好文,歡迎訪問公眾號文章匯總?http://www.csharpkit.com?
總結
以上是生活随笔為你收集整理的解决 VS2019 中.net core WPF 暂时无法使用 Designer 的临时方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: .NET Framework VS .N
- 下一篇: .NET Core 迁移躺坑记