我正在环顾MonoDevelop项目并注意到对Windows.Forms命名空间的引用。 我相信这是使用Openfile对话框。 (我应该说我在Windows机器上。)我想知道在Mac或Linux机器上运行MD时这是如何工作的?
引用Windows.Forms命名空间的项目/模块是否仅在Windows桌面上加载? Mono是否支持Winforms命名空间? 在我看来,Winforms最终会恢复到本机API调用,而这些调用在其他操作系统上无效。
我问的原因是因为我想开发一个跨平台的应用程序,我正在看MonoDevelop以了解它如何处理事情。 我知道Gtk是明智的选择,所以我很惊讶地看到Windows.forms参考。
I was looking around the MonoDevelop projects and noticed a reference to the Windows.Forms namespace. I belive it was using the Openfile dialog. (I should say I was on a Windows machine.) I was wondering how this works when MD is run on a Mac or Linux box?
Is the project/module that reference the Windows.Forms namespace only load on Windows desktops? Does Mono support the Winforms namespace? It would seem to me that Winforms eventually resovles to native API calls which wouldn't work on other OSs.
The reason I'm asking is because I want to develop a cross-platform application and I was looking at MonoDevelop to see how it handles things. I know Gtk is the clear choice, so I was surprised to see the Windows.forms reference.
最满意答案
http://www.mono-project.com/WinForms
并从他们的常见问题解答(http://www.mono-project.com/FAQ:_Winforms):
你用什么来实现Windows.Forms? Windows.Forms完全在C#托管代码中实现,并使用System.Drawing来执行其大部分任务。
有关更多详细信息,请参阅Winforms路线图
每个支持的操作系统都需要一个小驱动程序。 目前我们有驱动程序:
X Window系统 Win32窗口系统 Mac OSX窗口系统
http://www.mono-project.com/WinForms
And from their FAQ (http://www.mono-project.com/FAQ:_Winforms):
What are you using to implement Windows.Forms? Windows.Forms is implemented fully in C# managed code and uses System.Drawing to perform most of its tasks.
For more details see the Winforms Roadmap
A small driver is required for each operating system supported. Currently we have drivers for:
X Window System Win32 Window System Mac OSX Window System
更多推荐
发布评论