41909

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

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

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

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

Русский

2013-10-26

19.29 KB

34 чел.

Лабораторная №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).

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


 

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

12919. Дружба починається з посмішки 39 KB
  Виховне заняття. Тема. Дружба починається з посмішки. Мета: розкрити зміст понять дружба дійсний друг; показати його відмінність від понять приятель і знайомий; прищепити учням повагу до цінностей дружби; сприяти розвиткові критичного ставлення до себе і с
12920. Новий рік іде 44 KB
  Тема. Новий рік іде Мета: поглибити знання учнів про традиції та святкування Нового року в Україні інших країнах Європи; розвивати увагу мислення; виховувати любов і повагу до традицій свого народу та інших країн. Обладнання: атлас світу прапорці держав ялинкові прик...
12921. Цінність людини – в її унікальності 50 KB
  План конспект виховної справи В 7А класі новоселицької ЗОШ І ІІІ ст. проведеної Томишинець Ганною Михайлівною студенткою 5 курсу фізичного факультету. Тема: Цінність людини в її унікальності Мета: довести учням ідею неповторності й унікальності кожної особи
12922. Хто людям добра бажає, той і собі має 51 KB
  Виховна година. Хто людям добра бажає той і собі має Мета: продовжити розмову про людські достоїнства і вади; допомогти учням зробити висновок що добро твориться просто ні за так І. Драч; викликати в них бажання творити добро й уникати злих вчинків. Обладнанн...
12923. Алкоголь і злочин. Чи можна між ними поставити знак рівності 51 KB
  Виховна година Алкоголь і злочин. Чи можна між ними поставити знак рівності Мета: узагальнити та систематизувати знання учнів про негативний вплив алкоголю на організм людини на психіку; виховувати негативне ставлення особистості до алкоголю та відповідальність за
12924. Наші права – щасливе дитинство 35.5 KB
  Виховна година на тему: Наші права щасливе дитинство Мета:розповісти учням про їхні права й свободивизначені Конституцією про права дитини; навчити правильно реалізовувати свої прававиховувати в учнів поважне ставлення до власної особистості інших. Обла...
12925. Виховний захід. Дружба 51 KB
  Тема: Дружба Мета: розкрити зміст понять дружба дійсний друг; показати його відмінність від понять приятель і знайомий; прищепити учням повагу до цінностей дружби; сприяти розвиткові критичного ставлення до себе і своїх особистих якостей терпимості й коректно...
12926. Виховна година на тему «Європейські університети» 308 KB
  Виховна година на тему Європейські університети Ведучий 1 Доброго дня шановні викладачі студенти гості. Ведучий 2 Омар Хаям говорив: Знання для духу світоч найясніший знання для тіла панцир найміцніший. Ведучий 1 Знання нам дарують вихователі вчителі
12927. Виховна година на тему: «Шкідливість алкоголю» 62 KB
  Виховна година на тему: Шкідливість алкоголю Мета: Виховання свідомого ставлення до свого здоровя та здоровя громадян як найвищої соціальної цінності; формування валеологічного світогляду; формування та пропаганда здорового способу життя; профілактика шкідливих ...