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).

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


 

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

15478. Політика Австрійської монархії на західноукраїнських землях в кінці 18 - першій половині 19ст 29 KB
  Політика Австрійської монархії на західноукраїнських землях в кінці 18 першій половині 19ст. Наприкінці XVIII ст. внаслідок поділів Польщі західноукраїнські землі площею понад 60 тис кв. км з населенням 25 млн. осіб у тому числі 2 млн. українців стали колонією Австрійсько
15479. Політичне становище і соціально-економічний розвиток східноукраїнських земель у першій половині 19 ст. Колоніальна політика царизму щодо України 41 KB
  Політичне становище і соціальноекономічний розвиток східноукраїнських земель у першій половині 19 ст. Колоніальна політика царизму щодо України. Україна в російськотурецькій війни 18061812 рр. Як і в попередніх війнах Росії з Туреччиною Україна була найближчим тило...
15480. Механізм поширення збудження по нервових волокнах. Сальтаторна теорія проведення збудження. Фактори, що визначають швидкість поширення збудження 32 KB
  Механізм поширення збудження по нервових волокнах. Сальтаторна теорія проведення збудження. Фактори що визначають швидкість поширення збудження. Розповсюдження збудження по нервовим волокнам здійснюється на основі іонних механізмів генерації потенціалів дії і впли
15481. Ліквідація російським самодержавством автономного устрою України 76.5 KB
  КОЗАЦЬКИЙ ПЕРІОД ІСТОРІЇ УКРАЇНИ Лекція №8 Ліквідація російським самодержавством автономного устрою України 2. Коліївщина Назва Коліївщина найімовірніше означає повстання коліїв і походить від українського слова колій яким в українських селах і донині н
15482. Демографический потенциал рыночных реформ России 127.5 KB
  Значимость данной проблемы для граждан Российской Федерации очень велика, так как рыночные реформы влияют на: рост безработицы, пенсий, социальных пособий, ухудшением качества питания, снижением доступности социальных услуг, затяжным психологическим стрессом, неуверенностью в своём будущем и будущем детей.
15483. СССР в послевоенный период. Восстановление и репрессии 169.5 KB
  Главной задачей после окончания войны было восстановление народного хозяйства. За годы войны СССР потерял треть национального богатства, масса людей осталась без крова, не говоря уже о разрушенной промышленности и сельском хозяйстве. Восстановление народного хозяйства проходило в течение всей 4-ой пятилетки
15484. НАДАННЯ ПЕРШОЇ ДОПОМОГИ ПРИ НЕЩАСНИХ ВИПАДКАХ 198.5 KB
  Лекція 10 НАДАННЯ ПЕРШОЇ ДОПОМОГИ ПРИ НЕЩАСНИХ ВИПАДКАХ Програмна анотація Послідовність принципи та засоби надання першої допомоги. Дії у важких випадках Оживлення. Способи штучного дихання. Зовнішній масаж серця. Транспортування потерпілого Для ш
15485. Проблемы разработки многооконных интерфейсов 2.29 MB
  Microsoft Windows по-прежнему проповедует \"табовый\" однооконный интерфейс, популярные оконные менеджеры для Linux его в той или иной степени копируют (возможность использовать многооконность, разумеется, есть, но она не особенно популярна). Немного отличается от мейнстрима Mac OS X
15486. Бухгалтерский учет транспортных расходов организации 139 KB
  Своевременное, полное и достоверное отражение фактических расходов оказывает влияние на финансовый результат деятельности предприятия. В связи с этим большое значение приобретает бухгалтерский учет транспортных расходов...