【问题标题】:UI Design of WinForm CRUD App, What works?WinForm CRUD App 的 UI 设计,有什么用?
【发布时间】:2010-10-23 15:45:59
【问题描述】:

我正在为一大群护士和社会工作者设计一个“类似”WinForms CRUD 的应用程序,以与客户信息进行交互。

对于任何给定的客户,他们需要“可能”与之交互的许多不同形式(大约 30ish),并且对于特定的人,他们“可能”需要从一个跳到另一个.

我正在努力设计用户界面。我只设计了非常简单的线性 WEBForm CRUD,您可以在其中在页面上执行所需的操作,然后单击下一步。

对于非线性 WINForm CRUD 应用程序有何意义?

我已经开始在这些选项卡中嵌入表单的选项卡路径,但可能由于我缺乏能力,该程序感觉非常庞大。我不确定直接 MDI 是否可行,因为我有非常简单的用户,如果窗口“隐藏”,他们可能很容易混淆。

我非常感谢任何人提供的任何建议、见解或示例。特别是如果有人不得不自己制作 WINForm CRUD 应用程序。

哪种 UI 布局对您有效(或无效)?

我现在的样例在这里 -->

来自DevFiles

【问题讨论】:

  • 选项卡是一个非常糟糕的选择。
  • @Gortok:你能详细说明和/或提供替代方案吗?谢谢!
  • 对于它的价值,我通常更喜欢复选框而不是单选按钮来选择是/否。

标签: .net winforms user-interface crud


【解决方案1】:

我通过 CRUD 类型的应用学到的最重要的事情之一就是确保几乎每个按钮都有热键,并且 Tab 键的设置正确。

大多数时候,当您进行数据输入/修改时,您不希望将手从键盘上移开以将鼠标移至提交/更新按钮,尤其是在处理大量数据的情况下.将这两项按顺序排列将大大提高应用程序的生产力。

【讨论】:

    【解决方案2】:

    免责声明:我做 CRUD 不知道有多久了,但我现在才开始使用我的第一个 winforms 应用程序。

    所以,一些混合的想法:

    在我们当前的系统(使用 Centura/Gupta 编写)中,我们使用类似 MDI 的方法。 我认为允许用户开始处理新记录而不强迫他关闭当前工作很重要,因此始终显示打开的窗口列表以允许在不同表单之间快速切换。示例:


    (来源:pingmbh.de
    左下角打开的窗口列表。 此外,该系统还可以从另一个记录中打开一个记录,例如打开一个客户,显示这个客户的订单,双击他的一个订单来打开它等等。

    现在关于winforms:在做了一些研究之后,我决定反对MDI,而是使用包含一些SplitContainers的表单。其中一个容器面板显示打开的窗口列表,另一个显示当前窗体。由于我没有找到在面板中显示表单的方法,因此表单被实现为用户控件。主窗体跟踪打开的窗口并将它们显示在窗口列表中。如果用户单击列表中的窗口,或从程序中的其他位置打开相同的记录,则会将相应的面板带到前面。正在进行的工作图片:
    (来源:pingmbh.de
    考虑将现有记录的选择与这些记录的编辑分开,即在具有过滤和搜索功能的某种表(如网格视图)中显示现有记录,并让用户双击这些记录进行编辑。

    我注意到在您的屏幕截图中,您有“插入”和“更新”按钮。这是为了创建新记录和保存现有记录吗?我认为更好的方法是给用户一个“新建”按钮,然后打开一个包含“保存”和“取消”按钮的表单。用户可能并不总是记得他是否开始编辑新记录或现有记录。

    顺便说一句,选择屏幕是“新记录”按钮的好地方。

    【讨论】:

    • 至于插入/更新,是的,如果他们拥有适当的权限,他们可以进行更改并从该屏幕提交。感谢您的意见。
    • 另外,您知道我应该使用 UserControls 而非将表单嵌入面板中的原因吗?我已经看到用户控件出现了几次,但老实说,我不知道在嵌入式表单中使用它们会获得什么...?
    • AFAIK 您根本无法将表单嵌入面板中。但后来我认为自己是一个 winforms 新手
    • 看看我的一个问题的答案stackoverflow.com/questions/543087/… 似乎工作得很好。
    【解决方案3】:

    这里有一些公认的模式,有时您可以将它们有效地结合起来:

    1. 标签页
    2. TreeView(Win Explorer 文件夹, Visual Studio 的工具|选项)
    3. 折叠面板(Outlook 邮件/日历/联系人)

    折叠面板不是标准控件,但有几种可用的实现(这里是just one

    而且你并不孤单,要获得一些灵感,请参阅SO answer

    【讨论】:

    • 感谢您的提示。至于灵感,那一页有没有适合我的漫画??
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多