全新尝试|ComponentOne WinForm和.NET Core 3.0
在微軟 Build 2018 開發(fā)者大會上,.NET 團隊公布了 .NET Core 的下一個主要版本 .NET Core 3.0 的規(guī)劃藍圖:.NET Core 3將開始支持 Windows 桌面應(yīng)用程序,包括 Windows Form、Windows Presentation Framework(WPF)和UWP XAML。屆時在 .NET Core 3上將能運行 Windows桌面應(yīng)用程序,在享受 .NET Core新架構(gòu)優(yōu)勢便利的同時,兼容老的 .net應(yīng)用。目前為止,.Net Core 3.0 的首個預(yù)覽版已正式發(fā)布,而正式版本也將在今年全面推出。
作為經(jīng)典的全功能 .NET控件集,ComponentOne 技術(shù)團隊一直專注于行業(yè)未來的發(fā)展方向,2019年 ComponentOne 將繼續(xù)增強產(chǎn)品功能、增加新的控件并全面兼容 .Net Core 3.0。
在此之前,ComponentOne 技術(shù)團隊一直致力于研究框架和庫的變化和兼容性。因此,在 .Net Core 3.0正式版中使用任何 ComponentOne 控件將不需要進行任何更改(由于某些類缺少,有些控件當(dāng)前在 .Net Core 3.0 預(yù)覽版中不起作用。要了解未解決的問題,請?zhí)帘疚牡淖詈笠徊糠?#xff09;。
現(xiàn)在,我們將以 ComponentOne 其中一個 Demo 為例,看看如何將它移植到 .NET Core 3.0 中,此步驟與 GitHub 上的步驟類似。
先決條件
安裝 .NET Core 3.0 SDK。選擇適當(dāng)您的平臺下載安裝程序(如果您使用的是64位操作系統(tǒng),請使用x64;如果您使用的是32位操作系統(tǒng),請選擇x86)。
本Demo是使用VS2019運行的,您可以在?此處?下載預(yù)覽版。
安裝ComponentOne WinForms Edition(在?此處?獲取免費試用版)。如果已安裝本程序,則可以跳過此步驟。
運行步驟
第 1 步
考慮到VS2019預(yù)覽版中的工具有限,缺少WinForms的項目模板,我們將使用命令提示符創(chuàng)建一個新項目。打開命令提示符并運行以下命令:
dotnet new winform -o TestWFCore
上述代碼會創(chuàng)建一個名為TestWFCore的新項目。該項目位于c:\ Users(YourAccount)下
通過命令提示符導(dǎo)航到項目目錄
cd TestWFCore
第 2 步
通過命令提示符添加Windows兼容包,如下所示:
dotnet add package Microsoft.Windows.Compatibility
第 3 步
使用dotnet run運行應(yīng)用程序以確保項目正常工作。
dotnet?run
你將看到:Hello .NET Core!
現(xiàn)在我們可以在Visual Studio中打開它。
Visual Studio中的項目
第 4 步
我們將在.Net Core 3.0中運行現(xiàn)有示例,我們將在此位置進行移植“ComboBoxItemModes”輸入示例:
?\ Documents \ ComponentOne Samples \ WinForms \ C1Input \ CS \ ComboBoxItemModes
將上述示例中的所有csharp文件鏈接到此項目。同時包含licences.licx,它位于Properties文件夾下。
將licenses.licx文件標(biāo)記為嵌入資源。
大多數(shù)現(xiàn)有項目都包含Properties文件夾中的AssemblyInfo.cs文件。新項目樣式使用不同的方法,并在構(gòu)建過程中生成相同的程序集屬性。要禁用該行為,可以添加屬性GenerateAssemblyInfo:
<PropertyGroup>
?? ?<OutputType>WinExe</OutputType>
?? ?<TargetFramework>netcoreapp3.0</TargetFramework>
?? ?<UseWindowsForms>true</UseWindowsForms>
?? ?<generateassemblyinfo>false</generateassemblyinfo>
</PropertyGroup>
第 5 步
添加C1.Win.Input程序集的參考。
第 6 步
修改program.cs文件以創(chuàng)建Form1的實例并運行該應(yīng)用程序。這類似于任何WinForms應(yīng)用程序。
class Program
?? ?{
?? ? ? ?static void Main()
?? ? ? ?{
?? ? ? ? ?Application.Run(new Form1());
?? ? ? ?}
?? ?}
第 7 步
構(gòu)建并運行應(yīng)用程序:
Demo 示例下載
按照上述步驟,我們創(chuàng)建了一個簡單的示例,用于在 .NET Core 3.0 中運行不同的 ComponentOne 控件,段尾提供了 Demo 的下載示例。在運行示例之前,請查看自述文件。您將在以下位置找到 .NET Core 3.0 項目文件:?\ DotNetCore3Sample \ WinForms \ CS \ DotNetCore3 \ DotNetCore3
.NET Core 3示例
.NET Core 3.0預(yù)覽中的問題
目前,由于 .NET Core 3.0 預(yù)覽版尚未移植 WinForms 類,FlexGrid、TrueDbGrid、ThemeController和Command在 .NET Core 3.0 預(yù)覽版中運行時會出現(xiàn)bug。這些bug會在下一個預(yù)覽版中得到修復(fù):
https://github.com/dotnet/corefx/pull/33452
最后
伴隨著 .NET Core 3.0的到來,以及 WinForm 和 WPF 的開源,ComponentOne 也將迎來更多改變,針對桌面應(yīng)用程序、.NET Core Web API,ComponentOne將推出一系列全新控件和增強功能。
期待 ComponentOne 2019 將帶給您更多驚喜!
關(guān)于?ComponentOne Enterprise
ComponentOne 是一款專注于企業(yè)應(yīng)用高性能開發(fā)的 .NET 全功能控件套包,包含 300 余種控件,支持7大平臺,涵蓋7大功能模塊。較于市面上其他同類產(chǎn)品,ComponentOne 更加輕盈,功能更加強大,20 多年的開發(fā)經(jīng)驗,將為您的應(yīng)用系統(tǒng)帶來更為安全的使用體驗。純中文操作界面,一對一技術(shù)支持,廠商級的技術(shù)服務(wù),共同造就了這款國際頂級控件套包。
原文地址:https://www.cnblogs.com/C1SupportTeam/p/10280686.html
.NET社區(qū)新聞,深度好文,歡迎訪問公眾號文章匯總 http://www.csharpkit.com
總結(jié)
以上是生活随笔為你收集整理的全新尝试|ComponentOne WinForm和.NET Core 3.0的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 浅谈一致性Hash原理及应用
- 下一篇: asp.net ajax控件工具集 Au