[英]F# VS2019 Windows Forms
我正在學習 F#,我只是在嘗試構建 Animate 一個鍾擺程序。 這是代碼: https : //rosettacode.org/wiki/Animate_a_pendulum#F.23
據我了解,VS 2019 不支持 F# 中的 WinForms(也許,我錯了),所以我有錯誤消息,試圖復制/粘貼該代碼:
我該怎么辦?
非常感謝 !
如果您希望在 .NET Core 上使用 Winforms,則需要在項目中執行以下操作:
Sdk
更改為Microsoft.NET.Sdk.WindowsDesktop
OutputType
: <OutputType>WinExe</OutputType>
PropertyGroup
: <UseWindowsForms>true</UseWindowsForms>
沒有可視化設計器可供使用,但您應該可以訪問 API。
不幸的是,Visual Studio 2019 中沒有用於任何類型的 F# 項目的 Winforms 設計器,並且Winforms 只能在.Net Framework (而不是 .NET Core )項目中輕松訪問(據我所知),它們可以按@訪問菲利普卡特的回答。
但是,您仍然可以通過手動添加對 .NET Framework 項目的引用,或者(更輕松)通過使用 F# 編譯器fsc
手動編譯來輕松制作 Winforms 程序。
執行此操作的最簡單方法是使用 F# 編譯器從帶有fsc.exe
的單個源文件中簡單地編譯源代碼。 F# 編譯器將自動解析System.Windows.Forms
和許多其他常用命名空間之類的依賴項。 您還可以提供許多編譯器指令來要求其他資源。
啟動一個新的 F# 控制台 .NET Framework 項目(不要選擇 .NET Core)。
右鍵單擊解決方案資源管理器中的“引用”,然后單擊“添加引用...”
在程序集下,查找“System.Windows.Forms”,選擇它...
現在您可以訪問這兩個命名空間。
在 Visual Studio 中運行項目之前,您應該替換
[<STAThread>]
Application.Run( new PendulumForm( Visible=true ) )
和
[<STAThread;EntryPoint>]
let main _ =
Application.Run( new PendulumForm( Visible=true ) )
0
這樣你(和 VS)就知道main
實際位置。 這個小程序沒有必要實際運行它,但是隨着您的項目變大,VS 會更多地抱怨項目中的位置。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.