【问题标题】:Looking for fully managed WeifenLuo(DockPanel Suite) replacement or hints on implementing one [closed]寻找完全托管的 WeifenLuo(DockPanel Suite)替代品或实施一个的提示[关闭]
【发布时间】:2009-01-17 15:47:18
【问题描述】:

我需要一个 WeifenLuo 替代品,它可以在 .NET 和 Mono、Windows、Linux 和 Mac 上运行,最好在 MIT 许可下获得许可。 如果 API 与 WeifenLuo 的 API 相似,我将不胜感激,但我知道这样的 API 可能不可用。

另外,由于我在 Google 上找不到任何内容,我相信这可能不存在。 在这种情况下,我想要一些关于如何实现它的提示。

我有一些(不多)Windows.Forms 经验,我不能使用任何 P/Invoke。我已经知道如何检测窗口运动以及如何在给定位置和给定大小创建无边框半透明窗口。

所以这是我面临的一些问题:

  1. WeifenLuo 支持多个左/右/上/下窗格,允许它们调整大小并包含多个面板。
  2. 它还支持可拆分的选项卡。

在开始之前我还有什么需要注意的吗?是否有类似的开源项目可用?

【问题讨论】:

  • 这个项目对你来说效果如何?你最终使用 GTK# 了吗?我自己,在尝试使用 QuickSharp 调整浮动表单的大小时遇到​​了困难:stackoverflow.com/questions/16290541/…。 GTK# 看起来很有趣 - 实施起来容易吗?

标签: c# winforms mono dockpanel-suite


【解决方案1】:

在 Mono 上运行时,可以禁用所有 PInvoke to 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

【讨论】:

  • 谢谢。我将对此进行进一步调查。
【解决方案2】:

我一直想要同样的东西。我一直在测试 win 表单的基本布局系统,发现 WinForms 的单声道 Mac 版本不是 100% 完成的,就像拖放没有实现一样,而且速度很慢。

根据我自己的搜索,GTK# 在所有平台上都有最好的支持。另一种方法是为每个平台拆分 UI,即 WinFoms、GTK# (linux) 和 Cocoa (cocoa#/monobjc)。

【讨论】:

  • 这带来了另一个问题。是否有任何可用于 GTK# 和 Cocoa# 的对接库?我知道 MonoDevelop 有一个对接系统,但我没有运气让它独立......
  • 我还没有找到任何东西。对于 Mac 来说,这不是做事的方式。查看使用 monobjc 库并具有基本选项卡式文档界面的 MonoMate。我没怎么用过 GTK#。
【解决方案3】:

GTK# 看起来不错,但涉及,并且有一个学习曲线。我自己,我试过 QuickSharp,但在任何地方都找不到支持,而且 weifenlo 对接系统缺乏一些功能,并且难以实现表单大小。

我最终选择了[dockDotNet][1],它允许minimumsize 参数,并且非常易于使用。您可以使用属性管理器设置几乎所有浮动表单属性 - 甚至设置表单图标!

【讨论】:

    猜你喜欢
    • 2012-01-30
    • 2015-07-03
    • 1970-01-01
    • 2012-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-23
    • 2014-04-18
    相关资源
    最近更新 更多