00:00 Создание модели основного представления Создание модели основного представления с сгруппированной коллекцией в раскрывающемся списке. Переход к XAML-файлу главного окна и редактирование расширителя для более широкого обзора. Использование границы всплывающего окна и коллекции из коллекции для организации данных. 00:56 Привязка элемента управления Привязка элемента управления first items к списку конфигураций каналов. Создание шаблона элемента управления items для указания внешнего вида каждого элемента. 01:29 Настройка пользовательского интерфейса Настройка шаблона данных для динамического отображения элементов. Привязка метки к ключу IEnumerable конфигураций каналов. 02:39 Работа с расширителем Вставка расширителя обратно в XAML-файл. Добавление сетки и метки ключа для организации элементов. 03:56 Привязка содержимого выпадающего списка Добавление элемента управления items и настройка его шаблона. Проверка работы привязки и автоматическое отображение элементов. 05:14 Преобразование элементов в кнопки Замена меток на кнопки для обработки нажатий. Привязка кнопок к команде для выполнения действий. 06:42 Передача родительского элемента Передача родительского элемента дочернему через viewmodel. Использование инструментария MVVM для определения нажатого элемента. 07:11 Привязка к команде Привязка кнопки к команде с передачей элемента конфигурации канала. Проверка работы команды через точку останова в viewmodel. 10:59 Завершение привязки Настройка выбранной конфигурации при нажатии кнопки. Привязка анимированных всплывающих окон к открытым спискам настроек канала. 11:42 Проверка состояния списка Проверка открытия списка настроек канала через привязку к его состоянию. 12:07 Проблема с привязкой Значение переменной не меняется при открытии меню. Привязка к кнопке и тексту работает но всплывающее меню не функционирует. 12:53 Анализ проблемы Проблема связана с анимированным всплывающим окном и односторонней привязкой. Необходимо изменить привязку на двустороннюю. 13:54 Решение проблемы с рендерингом Рендеринг запускает бесконечный цикл из-за изменений в пользовательском интерфейсе. Переопределение рендеринга в модели представления и анимированном всплывающем окне. Передача изменений в другой поток диспетчера для предотвращения бесконечного цикла. 15:09 Проверка работы привязки Двусторонняя привязка работает при открытии меню но не при закрытии. Ошибка может быть в анимированном всплывающем окне. 16:13 Анализ работы анимации При закрытии меню запускается анимация обновления но значение открыто остаётся истинным. Удаление анимации из вызовов начать открывать и закрыть. 17:07 Завершение работы Обновление анимации и вызов события изменения свойства. Кнопка теперь закрывает меню правильно. 18:06 Привязка к тексту Содержимое привязано к тексту кнопки настройки канала который привязан к короткому тексту выбранных каналов. Планируется форматирование сетки для улучшения внешнего вида. Самая сложная привязка решена остальные будут проще.
Источник: rutube.ru