64位的Mac OS X也有Windows.Forms了
Mono長期以來一直為Linux、Mac和Windows提供Windows.Forms的純C#實現。隨著技術潮流的變化,Mono的Windows.Forms平臺仍然沒有得到很好的發展,還只是各種第三方庫和應用程序的依賴,這使得它的重要性超過了那些基于WinForms的應用程序。Mono默認切換到64位,給MacOS對Windows.Forms的持續支持帶來了問題,因為這個支持是建立在32位版本Carbon的基礎之上的。
為了彌補這個差距,Mono的Miguel de Icaza最近在研究如何改進MacOS的支持。他最初的選擇要么是利用64位版本Carbon提供的API,要么是嘗試用Xamarin.Mac在Cocoa之上構建新后端。對64位版本Carbon的初步研究表明,Windows.Forms的API文檔很差勁,很難看出64位版本能做些什么。于是,de Icaza開始嘗試使用Xamarin.Mac。
幸運的是,de Icaza把他的開發公布于眾,這讓Filip Navara有機會注意到他在做的事。然后,Navara聯系了de lacaza,提到他在做的一個項目也許對這個新嘗試有幫助。Navara提供了一個現成的Cocoa后端,可以重新規劃后用在Mono上。Navara的代碼來自Mono SWF,它為Mono構建了可用的Cocoa后端。
至此,de lcaza決定把這些代碼作為新64位版本的實現基礎,在MacOS上支持Mono的Windows.Forms。在審查代碼時,de lcaza注意到,對于某些控件,代碼中使用了本地AppKit。它也用到了System.Drawing的定制版本,這個版本最初是Mono為iOS用戶開發的。
原文:http://www.infoq.com/cn/news/2018/03/mono-forms-carbon64
.NET社區新聞,深度好文,歡迎訪問公眾號文章匯總 http://www.csharpkit.com
總結
以上是生活随笔為你收集整理的64位的Mac OS X也有Windows.Forms了的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Asp.Net Core2.0 基于Qu
- 下一篇: Windows Developer Da