41909

Простое приложение Windows Presentation Foundation

Лабораторная работа

Информатика, кибернетика и программирование

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

Русский

2013-10-26

19.29 KB

32 чел.

Лабораторная №4. Простое приложение Windows Presentation Foundation.

Длительность: 8 часов. Да, всего 8 часов!

Теоретическая часть

Необходимо изучить:

  1. Шаблон Model-View-ViewModel (MVVM)
  2. Привязка данных модели к элементам управления пользовательского интерфейса в WPF (Binding)
  3. Команды в WPF и класс RelayCommand
  4. Основные элементы форм и элементов управления WPF, их свойства и способ описания на языке xaml:
  5.  Grid
  6.  StackPanel
  7.  Label
  8.  TextBox
  9.  Button

По WPF написаны тонны книг. Можно пытаться сэкономить время, не ходя на занятия, а эти книжки прочитать самостоятельно (начните с Троелсена в 1400 страниц). А можно сходить на лабораторную, где за 20 минут вам объяснят самое главное.

Практическая часть

Используя среду разработки MS Visual Studio 2010 необходимо добавить в проект, созданный на третьей л/р, следующий функционал.

Часть 1. Повторить функционал прилагаемого примера

Добавить в солюшен новый проект: приложение WPF. Создать главное окно, класс ViewModelLocator, MainViewModel по примеру демонстрационного проекта. Класс RelayCommand скопировать из демонстрационного проекта.

Реализовать отображение свойств объекта сущности (по своему варианту задания) наподобие того, как это сделано в демонстрационном приложении. Все свойства должны быть редактируемы, кроме вычисляемого свойства.

Реализовать загрузку коллекции объектов из файла наподобие того, как это сделано в демонстрационном приложении (название файла вводить, например, через TextBox). Реализовать выбор редактируемого объекта через ввод ключевого свойства.

Жёстких требований к интерфейсным решениям нет. Можете попробовать сделать не как в примере, а красиво.

Часть 2. Этого нет в примере

Реализовать удаление объекта из коллекции.

Реализовать создание нового объекта.

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

  1. Слой интерфейса пользователя (User Interface Layer)
  2. Слой бизнес-логики (Business Logic Layer)
  3. Слой доступа к данным (Data Access Layer)

Часть 3. Требования

Консольное приложение должно работать, как и прежде. Вообще, если классы библиотеки классов были написаны правильно (в соответствии с требованиями 3-й лабораторной), код библиотеки должен поменяться только в части класса, ответственного за сохранение данных в файл. Менять код консольного приложения вообще не должно возникнуть необходимости.

Архитектура WPF-проекта должна соответствовать шаблону MVVM, в частности:

  1. действия, инициируемые пользователем, должны быть реализованы, как WPF-команды (удобно использовать класс RelayCommand, как в примере);
  2. код ViewModel не должен иметь зависимостей от View (главного окна приложения);
  3.  View должен содержать, по возможности, только декларативное описание интерфейса на языке xaml (то, что для главного окна хранится в файле MainWindow.xaml)и не должен содержать логики в code-behind файле (для главного окна хранится в файле MainWindow.cs).

Впрочем, нарушение этих правил почти сразу усложнит написание и отладку приложения, в этом случае создание качественного кода будет даже проще, чем некачественного.


 

А также другие работы, которые могут Вас заинтересовать

47438. Принципы и механизмы регуляции онтогенеза 69.5 KB
  Механизмы онтогенеза Деление клеток Миграция клеток Сортировка клеток Гибель клеток Дифференцировка клеток Эмбриональная индукция Генетический контроль развития Деление клеток При делении клеток из зиготы одноклеточной стадии развития возникает многоклеточный организм. Деление клеток обеспечивает рост организма. Избирательное размножение клеток обеспечивает морфогенетические процессы.
47439. Регенерация 37.5 KB
  Тема: Регенерация План. Регенерация как процесс поддержания морфофизиологической целостности биологических систем на уровне организма. Физиологическая регенерация Репаративная регенерация
47440. Гомеостаз и его проявление на разных уровнях организации биосистем 62.5 KB
  Понятие гомеостаза Основные компоненты гомеостаза. Системные механизмы гомеостаза. Эндокринные механизмы гомеостаза.
47441. Биологическая эволюция. Основы теории эволюции 89 KB
  Основы теории эволюции. Дарвина о механизмах эволюции живой природы. Синтетическая теория эволюции. Учение о микроэволюции
47442. Действие элементарных эволюционных факторов в популяциях людей 93.5 KB
  Тема: Действие элементарных эволюционных факторов в популяциях людей План. Популяция людей. Генетическое разнообразие в популяциях людей Генетический груз в популяциях людей
47443. Макроэволюция 64.5 KB
  Направления эволюции. Типы эволюции групп. Правила эволюции групп. Процесс макроэволюции связан непосредственно с явлениями микроэволюции и является их обобщенным выражением.
47444. Общие закономерности в эволюции органов и систем 61 KB
  Тема: Общие закономерности в эволюции органов и систем. Эволюция органов и функций 2. Дифференциация и интеграция в эволюции органов 3. Закономерности морфофункциональных преобразований органов 3.
47445. Филогенез систем органов хордовых. Наружные покровы. Опорно-двигательный аппарат 59 KB
  Онтогенез покровов млекопитающих и человека отображает их эволюцию по типу архаллаксиса. Онтогенез осевого скелета человека рекапитулирует основные филогенетические стадии его становления: в периоде нейруляции закладывается хорда заменяющаяся впоследствии хрящевым а затем и костным позвоночником. Нарушение онтогенеза осевого скелета у человека может выразиться в таких атавистических пороках развития как несрастание остистых отростков позвонков в результате чего формируется spin bifid дефект позвоночного канала. зародыш человека обладает...
47446. Филогенез систем органов хордовых. Пищеварительная система. Дыхательная система. Кровеносная система 85 KB
  Из спинной аорты кровь через систему капилляров возвращается по венам в брюшную аорту. По выносящим жаберным артериям кровь поступает в корни спинной аорты расположенные симметрично с двух сторон тела. Таким образом несмотря на простоту кровеносной системы в целом уже у ланцетника имеются основные Магистральные артерии характерные для позвоночных в том числе для человека: это брюшная аорта преобразующаяся позже в сердце восходящую часть дуги аорты и корень легочной артерии; спинная аорта становящаяся позже собственно аортой и сонные...