为旧版WinForms MDI应用程序设计新UI

时间:2008-09-08 19:53:19

标签: c# wpf silverlight user-interface

我正在努力将使用C#和WinForms创建的客户端/服务器应用程序移动到SOA / WPF / Silverlight世界中。 UI的设计是其中一个重大障碍。我目前的UI是MDI驱动的,用户严重依赖子窗口,同时打开多个窗口并在它们之间来回切换。

在无MDI环境中重建UI功能的最佳方法是什么? (我不想在WPF中自己创建MDI功能)。标签?一个切换不同控件的列表面板?

4 个答案:

答案 0 :(得分:4)

看看37signals以及他们的网页用户界面有多好(主要是HTML + AJAX)。这是有效的Web应用程序的一个很好的例子。要记住的一件事是确保不破坏网络范例。如果用户希望并排看到两件事,他们应该能够复制窗口并让Web浏览器进行窗口化。

对于WPF,有许多新的可视化范例。您可以在网站上找到各种控制工具包提供商的一些示例:XceedTelerikInfragistics。他们有演示程序,可以帮助您在应用程序中组织屏幕。

在WPF中开发复杂的复合应用程序时,您也可以从模式和实践Prism站点开始。它是一组InProgress实践,用于在WPF中规划和开发复杂的复合(智能客户端样式)应用程序。

答案 1 :(得分:3)

我认为答案实际上取决于你的用户 - 我设置了一些具有多种范例的原型并让它们提供一些输入。您要做的最后一件事是在没有任何最终用户输入的情况下引入新的UI范例。

标签现在非常流行,但不允许并排查看,因此如果这是一个要求,您可能希望采用更多的Outlook风格设置,可以激活多个面板,隐藏并重新调整大小。

您可能想要做的一件事是将您的应用程序编码为复合UI,其中每个视图都是独立于其容器构建的(无论是子窗口,制表符还是手风琴等),并且只是“丢弃”在“在设计师。当用户将来改变他们对导航范例的看法时,这将保护您免受伤害。

答案 2 :(得分:1)

多个顶级窗口易于实现并具有MDI的所有优势 - 这就是MS为新版本的Office选择的

答案 3 :(得分:0)

您是否尝试过GOA WinForms