我的应用程序中有一个重复的用户界面模式。一个例子是收集 5 年的地址数据。我需要收集 5 年的数据,然后继续前进。谁能给我指点任何好的 UI 设计网站来实现这种功能。目前我在顶部有一个表单视图,在底部有一个详细信息视图,它很笨重,希望更有用。
4 回答
最好的 UI 模式实际上涉及 UserControl(如果使用 VS / .Net)。它允许您创建可重用的控件。假设您需要 5 年的工作。与其为所有 5 年单独创建每个控件,不如创建一个 UserControl 并重复使用 5 次。
这种模式提供了很大的灵活性,因为您不仅可以将特定于控件的代码放入 UserControl 中,还可以在包含 UserControl 的表单中编写其他方法。
如果您无法使用 UserControl,我建议您将 UI 分解为相关功能组。例如:
class Employment : GroupControl // <-- inherit equivalent of whatever control group available
{
public TextBox Name {get; set; }
public TextBox Employee {get; set; }
private TextBox name;
private TextBox employer;
// more controls
public Employment()
{
// set all control properties
// equivalent InitializeComponents();
}
}
class MainForm : Form // <-- inherit equivalent of whatever form container available
{
public Mainform()
{
// iterate 5 instances of Employment class
this.Controls.Add(new Employment);
}
}
如果我理解正确,您需要有一个可以是 N 个条目的“添加 UI”。
在您的示例中,您添加了过去 5 年的任意数量的地址。
StackOverflow 答案 UI 就是一个示例(向问题添加任意数量的响应),它提供内联的“添加”机制,而不是通过单独的屏幕/UI 小部件。
您可以在 Infragistics Quince 网站上找到类似的内容。
重用相同的控件是一个明智的想法。但我的假设是您想知道如何显示 n 个地址的条目。
从 ui 的角度来看,从一个地址输入表单(控件)开始,并且能够(一个按钮?)在需要时添加另一个。不过不要去掉这个按钮 - 每个额外的地址(以及它的有效日期)都需要它。
将每个新地址控件直接放在现有地址控件下方,并尽可能避免页面刷新等。如果需要,请考虑滚动以确保新控件可见。使用其他适当的方法来表明新控件已添加,但为了您的用户 - 请不要使用消息/对话框。
您可能还需要考虑自动填充连续入住日期。