【问题标题】:How to implement mdi in a WPF application如何在 WPF 应用程序中实现 mdi
【发布时间】:2010-10-29 11:59:15
【问题描述】:

我真的很喜欢 MDI 应用程序。

它允许我在窗口之间快速移动并比较不同窗口的内容。此外,有时一个窗口的内容对另一个窗口有用,所以我可以复制和粘贴。我认为这是一种很棒的工作模式用户体验。

正确或错误的做法,我喜欢。

我看到了 Stack Overflow 问题MDI applications in WPF,他们在那里以Visual Studio 2010 环境为例。我不明白是否以及如何实现该环境:例如可​​以将选项卡撕下到独立屏幕(对我来说不太重要)并与其余选项卡并排重新排列。

我想我正在寻找“WPF 中的停靠布局系统”,用谷歌搜索这个提供的第三方组件。

我想我将从“普通”应用程序开始。感觉这里没有简单的开箱即用实现。

【问题讨论】:

    标签: wpf mdi


    【解决方案1】:

    出于某种原因,微软认为 MDI 是错误的。在 Google 中搜索时,有很多关于此的信息。

    我认为杀死这么多人喜欢的东西是错误的,在我访问的论坛中,有些人指出了一个在 MDI 中工作的新 Microsoft 示例,以强调它是构建应用程序的合法方式。

    我讨厌逆流而上,所以当我明白尽管可以使用现代 Microsoft 应用程序(例如 silverlight、wpf 甚至可能是 windows-phone)创建 MDI 应用程序时,我就退出了,但微软确实不喜欢它并且不'不提供任何支持(据我所知)。

    希望对想知道我们的好老 MDI“父亲”发生了什么的其他人有所帮助。

    【讨论】:

      【解决方案2】:

      CodePlex 上有两个热门项目可能会对您有所帮助:

      • AvalonDock - Visual Studio 风格的对接库,以及
      • WpfMdi 这是一个经典的 MDI 窗口管理器。

      AvalonDock 支持并排单独的选项卡集,还支持像 Visual Studio 这样的分离窗口,因此它应该为您提供所需的一切,尽管不完全是经典的 MDI。它在 SharpDevelop 中使用,因此您可以下载它来玩转并了解如何使用对接库。

      编辑:

      我发现第三个看起来很时髦:Chronos WPF

      【讨论】:

      【解决方案3】:

      我不认为他们是一种内置的方式来做到这一点。但是,您可能想考虑从 DevExpress、Component One、Infragisitcs、Telerik 等人那里购买一组用户控件……我认为他们中的大多数人将拥有与 VS2010 的工作方式类似的控件。我知道 DevExpress 有。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-01-19
        • 1970-01-01
        • 1970-01-01
        • 2013-07-20
        • 2014-02-21
        相关资源
        最近更新 更多