我需要一个WeifenLuo替代品,它可以在.NET和Mono上运行,在Windows,Linux和Mac上运行,最好是在MIT许可下获得许可。 如果API与WeifenLuo类似,我会很感激,但据我所知,这可能无法使用。
此外,由于我在Google上找不到任何内容,我相信这可能不存在。 在这种情况下,我想了解如何实现这一点。
我有一些(不多)Windows.Forms经验,我不能使用任何P / Invoke。我已经知道如何检测窗口运动以及如何在给定位置和给定大小上创建无边框半透明窗口。
所以这是我面临的一些问题:
在开始之前还有什么我应该注意的吗?是否有类似的开源项目?
答案 0 :(得分:3)
在Mono上运行时,可以禁用所有PInvoke到Win32 API。您支付的价格是在Mono / Linux上失去拖放支持,这在某些情况下可能是可以接受的。
已修改:http://www.lextm.com/2012/05/a-call-to-the-community-dockpanel-suite-history-and-future-2/ DPS的分支现在托管在GitHub上,http://github.com/dockpanelsuite/dockpanelsuite
答案 1 :(得分:1)
我一直想要同样的事情。我一直在为win表单测试一个基本的布局系统,发现单声道版本的WinForms不是100%完整,就像拖放还没有实现而且速度很慢。
从我自己的搜索中,GTK#在所有平台上都有最好的支持。另一种方法是拆分每个平台的UI,即WinFoms,GTK#(linux)和Cocoa(cocoa#/ monobjc)。
答案 2 :(得分:0)
GTK#看起来不错,但涉及到,并且有一个学习曲线。我自己,我尝试过QuickSharp,但无法在任何地方找到支持,而且weifenluo对接系统缺少一些功能,很难实现表单大小。
我最终选择了[dockDotNet][1]
,它允许minimumsize
参数,并且非常容易使用。您可以使用属性管理器设置几乎所有浮动表单属性 - 甚至设置表单图标!