【问题标题】:Ribbon UI Control for WinFormsWinForms 的功能区 UI 控件
【发布时间】:2009-01-05 17:46:09
【问题描述】:

在 VS 2008 中是否有可用的功能区 UI 控件?如果我在开发和部署机器上安装了 Office 2007,它是否可用?


编辑:我想微软会在 VS 2008 中包含 Ribbon UI 控件,因为这是办公室 UI 将向前发展的方式,也是为了 Windows 应用程序的一致性

【问题讨论】:

标签: winforms ribbon


【解决方案1】:

是的 - 它包含在 Visual Studio 2008 Service Pack 1 中 - 至少对于 C++/MFC 支持而言。

请参阅此similar question 了解更多信息。

【讨论】:

    【解决方案2】:

    关于许可,您需要查看Microsoft Office UI licencing information,并获得免版税许可。您必须遵守特定的规定,以及许可证的推荐/最佳实践部分。

    Jensen Harris 指出,如果您编写的应用程序与使用功能区的 Microsoft 生产力应用程序(例如 Word、PowerPoint 等)直接竞争,您将无法获得免版税许可。

    【讨论】:

      【解决方案3】:

      如果您使用的是 Windows 7 / Vista,微软提供了 Windows Ribbon Framework - 操作系统附带的免费功能区控件(在 vista 中,请检查平台更新)。

      使用 Windows Ribbon Framework 的主要原因:它是由微软开发的。

      这意味着:

      • 由于它是原始版本,它包含所有功能,而其他免费/商业功能区控件总是具有那些“未实现”部分。

      • 它具有完整的支持并与 Windows 7 UI 和辅助功能集成。只需考虑触摸屏支持或高 DPI 屏幕兼容性。

      此外,还有一个名为的托管包装库 Windows Ribbon for WinForms 允许您在 .NET WinForms 应用程序中使用功能区。

      【讨论】:

      • 这是 .NET Forms 应用程序的最佳解决方案。即使是 Microsoft 的官方 MFC 和 WPF 功能区控件也是对 Office 功能区的拙劣模仿,看起来和感觉都不自然。对于 .NET Forms,本机 Windows 功能区上的托管包装器是最好的。对于 WPF,Fluent Ribbon 库是最好的,因为它看起来就像 Office 2010/2013 并且具有功能齐全的后台区域等。
      【解决方案4】:

      请注意,如果您想使用功能区控件,您需要获得微软的特别许可才能这样做。大多数情况下,除非您的名字是开放式办公室,否则这将是一种形式。

      信息显示在:http://msdn.microsoft.com/nl-nl/office/aa973809(en-us).aspx

      【讨论】:

      • 微软是否在功能区 UI 上拥有某种专利?如果没有,是什么真正阻止您编写自己的功能区控件。
      • 只有你们中的一些人在使用他们的 Office UI Framework 中的 Microsofts 功能区控件。您可以从许多供应商那里愉快地购买和使用功能区控件,而且您当然可以自己编写。但是,许多功能区确实使用 Windows 7 功能区 API 或其中的元素,或 Office UI 框架中的元素,并且 那些 功能区将需要许可,因为使用单个元素,您必须获得许可。如果您从头开始编写自己的代码,则这些规则不适用。
      • 授权创建自己的功能区控件的目的是不要搞砸它。他们要求如果您创建自己的功能区,请遵循某些可用性指南;而不是把碰巧看起来像一条丝带那样弄得一团糟。许可证文档详细介绍了调整窗口大小、大小、间距、功能、外观和感觉时功能区的行为方式。他们希望人们同意他们会做得很好。 Windows Ribbon Framework 负责所有这些,迫使您拥有一个好的功能区。
      【解决方案5】:

      Codeplex 上有一个 Ribbon 控件,你可以试试。

      【讨论】:

        【解决方案6】:

        另一种没有人提到的可能性:您可以使用 WPF Ribbon control 并将其托管在 Winforms WPF 容器中。

        【讨论】:

          【解决方案7】:

          我发现 Telerik RadRibbon 控件非常好,虽然有点不灵活。它也是(这是我建议它的主要原因)VS2008 Express 注册优势(请参阅MS Connect),但除此之外Telerik 网站。

          【讨论】:

            【解决方案8】:

            this project。与迄今为止的所有其他答案不同,它非常易于使用,是本机 Winforms,并支持 Windows XP。不幸的是,它有很多错误,而且似乎已被废弃。

            它被另一位开发者here(出于某种愚蠢的原因拒绝将其上传到在线存储库)。它在设计器中有点错误,但在运行时似乎运行良好。 如果您必须支持 XP 并且不想使用 WPF,我认为这是您的最佳选择。

            【讨论】:

              【解决方案9】:

              我会说 DevComponent 的 DotNetBar 是最好的 Office 2007/2010 功能区。唯一的问题是您必须购买它(单许可证 264 美元,单许可证加源代码 299 美元,单站点许可证 2995 美元)。试用该演示,它为您提供 28 天的试驾(购买的软件中的所有内容只能使用 28 天)。他们当前的版本是 8.8。

              Reference

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2011-02-27
                • 1970-01-01
                • 2011-03-27
                相关资源
                最近更新 更多