Шаблон пользовательского интерфейса

У меня есть повторяющийся шаблон пользовательского интерфейса в моем приложении. Примером может служить сбор адресных данных за 5 лет. Мне нужно собрать данные за 5 лет, а потом двигаться дальше. Может ли кто-нибудь указать мне на какие-либо хорошие сайты по дизайну пользовательского интерфейса для достижения такой функциональности. На данный момент у меня есть представление формы вверху и представление сведений внизу, которое неуклюже и хотелось бы чего-то более полезного.


person chugh97    schedule 10.07.2009    source источник
comment
@ chugh97: твое описание неясно. Может быть, дайте нам снимок экрана или более четкое описание? ваше здоровье   -  person Forer    schedule 13.07.2009


Ответы (4)


повторное использование одного и того же элемента управления является разумной идеей. Но я предполагаю, что вы хотите знать, как отобразить запись для n адресов.

с точки зрения пользовательского интерфейса, начните с одной формы ввода адреса (элемент управления) и имейте возможность (кнопка?) добавить другую, если это необходимо. не избавляйтесь от кнопки, хотя она будет нужна для каждого дополнительного адреса (и периода даты, для которого она была действительна), который требуется.
размещайте каждый новый элемент управления адресом непосредственно под существующим (и) и избегайте страниц обновляет и т. д., если это возможно. рассмотрите возможность прокрутки, если это необходимо, чтобы убедиться, что новый элемент управления виден. используйте другие подходящие методы, чтобы указать, что новый элемент управления был добавлен, но ради ваших пользователей - пожалуйста, не используйте сообщение/диалоговое окно.
вы также можете рассмотреть возможность автоматического заполнения последовательных дат занятости.

person Matt Lacey    schedule 18.02.2010

Лучший шаблон пользовательского интерфейса на самом деле включает в себя UserControl (при использовании VS/.Net). Это позволяет вам создать повторно используемый элемент управления. Скажем, вам нужно 5 лет работы. Вместо того, чтобы создавать каждый элемент управления отдельно на все 5 лет, создайте один пользовательский элемент управления и повторно используйте его 5 раз.

Этот шаблон обеспечивает большую гибкость, поскольку вы не только можете поместить код, специфичный для элемента управления, в UserControl, но и можете закодировать дополнительные методы в форме, содержащей UserControl.

Если UserControl недоступен для вас, я бы рекомендовал разбить ваш пользовательский интерфейс на группы связанных функций. Например:

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);
    }
}
person IAbstract    schedule 18.02.2010

Если я правильно понимаю, вам нужно иметь «добавить пользовательский интерфейс», который может быть N записей.

В вашем примере вы добавляете произвольное количество адресов за последние 5 лет.

Пользовательский интерфейс ответов StackOverflow является одним из примеров (добавление произвольного количества ответов на вопрос), и он предоставляет встроенный механизм «добавления», в отличие от использования отдельного виджета экрана / пользовательского интерфейса.

Вы можете найти нечто подобное на сайте Infragistics Quince здесь.

person micahtan    schedule 18.02.2010

Что касается простого указания на пару хороших страниц шаблонов дизайна пользовательского интерфейса, вот мой список:

Вы также можете проверить домашние страницы книг О'Рейли.

person Anne Schuessler    schedule 18.02.2010