试图确定布局的最佳用户界面 - 显示下拉列表的winform按钮

时间:2009-10-11 01:40:36

标签: c# winforms user-interface

我正在为winforms GUI添加布局管理,这实际上意味着您可以使用“密钥”“保存”当前列设置

所以例如你可以有“View 1”或“View 2”。

无论如何,我在屏幕上没有太大的空间,但我想找出最好的方法:

  1. 允许您将当前布局保存为“已保存的布局”
  2. 允许您选择其他布局并应用它。
  3. 现在我有:

    1. 保存图标
    2. 具有已保存布局列表的Combobox
    3. 应用图标
    4. 它工作正常,但看起来有点不清楚,因为下拉组合框可用,并且不一定与您正在查看的视图相对应。

      我认为一个想法是代替显示组合,只有两个按钮:

      1. 保存布局
      2. 应用现有布局。
      3. 当您点击#2时,这将变为下拉列表并显示其他布局。

        想法或任何其他建议,以明确的方式来形象化这个?

3 个答案:

答案 0 :(得分:3)

当空间紧张时,我是LinkLabel和ContextMenuStrip控件的忠实粉丝。

Save会弹出另一个表单或类似内容以输入当前布局的名称(或者可以自动设置),Load会在弹出菜单中显示保存的布局,然后可以单击以选择所需的布局。

LinkLabels占用的空间少于Buttons和ComboBoxes,并且对它们的工作原理一无所知。

答案 1 :(得分:0)

我喜欢你的第二个想法,只需一个保存按钮,一个生成下拉菜单+应用

根据我的经验,有时最好将这些逻辑分离到自己的模态窗口中,以选择要做什么,在你的布局附近将是一个暗示“高级用法”的图标

总是尝试“评论”组件(尽可能使用提示)告诉用户可以使用特定功能做什么

alt text http://www.talkingtext.com/wordpress_en/wp-content/uploads/2008/04/googleproduct.jpg

答案 2 :(得分:0)

我尽量保持用户界面尽可能整洁,特别是涉及到更具辅助性的功能时。为此,如果我可以利用用户可以右键单击以上拉的上下文菜单,我会。从上下文菜单中,我通常会提供一个对话框来支持所需的功能。

如果保存布局是您向用户显示的表单的主要功能,则可能需要保证UI元素,例如具有专用空间的按钮或组合框。否则,我会认真考虑将提供该功能的控件放在另一个弹出对话框中,并使用类似上下文菜单的机制来调出该对话框。

最初,上下文菜单构思的缺点是用户需要“知道”该功能存在。这可以通过培训或工具提示或其他方式解决。通常,一旦用户“知道”像ListViews这样的控件,TreeViews和DataGridViews就可以有上下文菜单,他们就没有找到功能的问题。

只是我的两分钱。