Разработка облачных бизнес-приложений с использованием Visual Studio LightSwitch 2011

Создание экранов с расширенной функциональностью

Разбить на страницы
Показывать лекцию целиком

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

Например, для редактирования групп будет удобно, чтобы слева отображалась информация о Факультетах, а справа информация о Группах и Преподавателях относящихся к данному факультету.

Выбрав нужный факультет можно редактировать информацию о Группах и Преподавателях относящихся к данному факультету.

Для создания такого экрана необходимо:

1. Вызвать окно добавление экрана и выбрать шаблон Экран со списком и подробными сведениями, а также выбрать флажки ФакультетыItem Группы и ФакультетыItem Преподаватели и для имени экрана указать ФакультетыПолныеСведения.

(рис 9.1)

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

(рис 9.2)

Если использование вкладок для редактирования Групп и Преподавателей неудобно, то можно изменить это: просто расположить таблицы друг под другом.

Для этого в конструкторе экрана замените Макет вкладок на Макет строк для соответствующего элемента.

(рис 9.3)

Это изменить редактор Преподавателей на следующий вид.

(рис 9.4)

Особо хочется отметить, что для реализации указанного поведения не потребовалось написать ни одной строчки программного кода.

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

Создайте новый экран по шаблону Экран со списком и подробными сведениями установите в качестве источника данных Факультеты, и включите данные ФакультетыItem Группы. Задайте имя – ФакультетыПоГруппам.

(рис 9.5)

Открытый в конструкторе экран требует доработки. В области данных выберите кнопку Добавить СтудентItem, в конструктор будет добавлен источник данных, связанный со студентами.

(рис 9.6)

Созданные данные необходимо перенести на заготовку экрана

(рис 9.7)

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

(рис 9.8)

Более логично было бы, чтобы списки Факультеты и Группы располагались друг под другом. Так как на этом экране не планируется редактировать сущности Факультеты и Группы, то для них можно убрать кнопки Панели команд.

Откройте экран в конструкторе и перетащите Сетку данных Группы под Сетку данных факультета и удалите освободившийся Макет строк Группы.

(рис 9.9)

Затем удалите Панель команд и для Групп и для Факультетов используя контекстное меню.

(рис 9.10)

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

(рис 9.11)

Аналогичный экран можно создать для редактирования дисциплин с их привязкой к факультетам, а также к преподавателям.

Добавьте новый экран на основе шаблона Экран со списком и подробными сведениями

(рис 9.12)

Дайте ему название ДисциплиныПоПреподавателям. В качестве дополнительных данных укажите только ФакультетыItem Преподаватели.

В конструкторе экрана необходимо для источника данных Преподаватели добавить данные по дисциплинам с использованием кнопки Добавить Дисциплины Collection

(рис 9.13)

Перенесите созданный элемент данных в список экрана.

(рис 9.14)

Удалите элементы панели команд для Факультетов и преподавателей.

В результате будет создан интерфейс, реализующий необходимые функции:

(рис 9.15)

Последний интерфейс необходим для добавления оценок. При этом необходимо выбрать группу и дисциплину, а затем добавить все оценки.

Для создания интерфейса необходимо:

Добавьте новый экран на основе шаблона Экран со списком и подробными сведениями. Создается на основе источника Факультеты, а в качестве дополнительных данных укажите ФакультетыItem Группы.

Задайте имя экрана ДобавлениеОценок.

(рис 9.16)

Затем в конструкторе экрана к элементу группы необходимо добавить Дисциплины Collection. К элементу Дисциплины Collection добавить ОценкиЗаСеместр Collection.

Перетащите их на макет экрана в соответствии с рисунком.

(рис 9.17)

Отключите панели команд у Факультетов, Групп, Дисциплин. Для более удобного расположения на экране элементов задайте для макета строк, содержащего Факультеты и Группы свойство Мак ширина = 200, а для макета строк с Дисциплинами свойство Мак ширина = 150. И установите для них флажок Изменение размеров столбца.

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

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

(рис 9.18)

Самостоятельная работа

  • Создайте экран добавления Преподавателей для выбранного факультета.
  • Создайте экран редактирования оценок для заданной группы (выбора дисциплины в таблице в виде списка).
  • Страницы:

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

    Например, для редактирования групп будет удобно, чтобы слева отображалась информация о Факультетах, а справа информация о Группах и Преподавателях относящихся к данному факультету.

    Выбрав нужный факультет можно редактировать информацию о Группах и Преподавателях относящихся к данному факультету.

    Для создания такого экрана необходимо:

    1. Вызвать окно добавление экрана и выбрать шаблон Экран со списком и подробными сведениями, а также выбрать флажки ФакультетыItem Группы и ФакультетыItem Преподаватели и для имени экрана указать ФакультетыПолныеСведения.

    (рис 9.1)

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

    (рис 9.2)

    Если использование вкладок для редактирования Групп и Преподавателей неудобно, то можно изменить это: просто расположить таблицы друг под другом.

    Для этого в конструкторе экрана замените Макет вкладок на Макет строк для соответствующего элемента.

    (рис 9.3)

    Это изменить редактор Преподавателей на следующий вид.

    (рис 9.4)

    Особо хочется отметить, что для реализации указанного поведения не потребовалось написать ни одной строчки программного кода.

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

    Создайте новый экран по шаблону Экран со списком и подробными сведениями установите в качестве источника данных Факультеты, и включите данные ФакультетыItem Группы. Задайте имя – ФакультетыПоГруппам.

    (рис 9.5)

    Открытый в конструкторе экран требует доработки. В области данных выберите кнопку Добавить СтудентItem, в конструктор будет добавлен источник данных, связанный со студентами.

    (рис 9.6)

    Созданные данные необходимо перенести на заготовку экрана

    (рис 9.7)

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

    (рис 9.8)

    Более логично было бы, чтобы списки Факультеты и Группы располагались друг под другом. Так как на этом экране не планируется редактировать сущности Факультеты и Группы, то для них можно убрать кнопки Панели команд.

    Откройте экран в конструкторе и перетащите Сетку данных Группы под Сетку данных факультета и удалите освободившийся Макет строк Группы.

    (рис 9.9)

    Затем удалите Панель команд и для Групп и для Факультетов используя контекстное меню.

    (рис 9.10)

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

    (рис 9.11)

    Аналогичный экран можно создать для редактирования дисциплин с их привязкой к факультетам, а также к преподавателям.

    Добавьте новый экран на основе шаблона Экран со списком и подробными сведениями

    (рис 9.12)

    Дайте ему название ДисциплиныПоПреподавателям. В качестве дополнительных данных укажите только ФакультетыItem Преподаватели.

    В конструкторе экрана необходимо для источника данных Преподаватели добавить данные по дисциплинам с использованием кнопки Добавить Дисциплины Collection

    (рис 9.13)

    Перенесите созданный элемент данных в список экрана.

    (рис 9.14)

    Удалите элементы панели команд для Факультетов и преподавателей.

    В результате будет создан интерфейс, реализующий необходимые функции:

    (рис 9.15)

    Последний интерфейс необходим для добавления оценок. При этом необходимо выбрать группу и дисциплину, а затем добавить все оценки.

    Для создания интерфейса необходимо:

    Добавьте новый экран на основе шаблона Экран со списком и подробными сведениями. Создается на основе источника Факультеты, а в качестве дополнительных данных укажите ФакультетыItem Группы.

    Задайте имя экрана ДобавлениеОценок.

    (рис 9.16)

    Затем в конструкторе экрана к элементу группы необходимо добавить Дисциплины Collection. К элементу Дисциплины Collection добавить ОценкиЗаСеместр Collection.

    Перетащите их на макет экрана в соответствии с рисунком.

    (рис 9.17)

    Отключите панели команд у Факультетов, Групп, Дисциплин. Для более удобного расположения на экране элементов задайте для макета строк, содержащего Факультеты и Группы свойство Мак ширина = 200, а для макета строк с Дисциплинами свойство Мак ширина = 150. И установите для них флажок Изменение размеров столбца.

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

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

    (рис 9.18)

    Самостоятельная работа

  • Создайте экран добавления Преподавателей для выбранного факультета.
  • Создайте экран редактирования оценок для заданной группы (выбора дисциплины в таблице в виде списка).
  • Вернуться к учебному плану