Пример использования Gjallarhorn.Bindable.Wpf
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
StudentsTask
.gitignore
README.md
StudentsTask.sln

README.md

StudentsWpfTestTask

Пример использования Gjallarhorn.Bindable.Wpf в виде демонстрации одного из возможных вариантов реализации следующего тестового задания

Тестовое задание

Необходимо разработать приложение с использованием данных, представленных в файле Students.xml. Указанный файл содержит следующие сведения о студентах: фамилия, имя, возраст, пол.

Требования

Окно приложения должно предоставлять пользователю следующие возможности:

  • отображение списка уже существующих элементов;
  • создание нового элемента и добавление в список;
  • редактирование любой записи в списке;
  • удаление одной и более записей из списка.

Требования к целостности данных:

  • поля с именем, фамилией и полом обязательны для заполнения;
  • возраст не может быть отрицательным и должен находиться в диапазоне [16, 100].

В случае нарушения целостности данных необходимо уведомлять пользователя об этом с указанием конкретного несоответствия требованиям к заполнению полей.

Требования к дизайну:

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

  • в случае, если количество записей в списке превышает одну, необходимо использовать для каждой четной и нечетной строки свою цветовую схему (максимум 2 цвета для любого числа записей);

  • фамилия и имя должны отображаться в строке как единое целое;

  • возраст должен отображаться в виде числа с постфиксом «лет» (допускается применение такого постфикса для всего диапазона значений; приветствуется использование постфиксов «года», «лет» в зависимости от возраста);

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

  • в случае удаления одного или более элементов из списка у пользователя должно запрашиваться подтверждение этого действия.