48. Avalonia UI Real World (Advanced Collection Changes)

00:00 Введение и проблема с сохранением данных • В последнем видео были созданы страницы, которые нужно доработать. • Проблема: при установке флажка не сохраняется отредактированное значение. • Причина проблемы: привязка данных к строке. 00:31 Решение проблемы с привязкой • Изменение модели представления на пару ключ-значение для упрощения привязки. • Ключ — имя, логическое значение — проверено ли значение. • Преобразование данных в модель данных для отбора отмеченных элементов. 02:07 Работа с коллекциями и форматами экспорта • Передача наблюдаемой коллекции в формате экспорта. • Создание новых элементов с ключом и логическим значением. • Использование форматов точечного экспорта для определения выбранных элементов. 05:17 Проблемы с привязкой и их решение • Привязка не работает из-за использования пары ключ-значение без атрибутов viewmodel. • Создание нового класса viewmodel с наблюдаемыми свойствами. • Добавление конструктора для инициализации свойств. 09:05 Обработка изменений коллекции • Добавление хука для коллекции для уведомления об изменениях. • Проверка изменений и обновление значений. • Создание метода расширения для упрощения поддержки изменений. 10:23 Завершение работы с коллекциями • Подключение к формату экспорта и изменение коллекции. • Использование встроенной функции для вызова делегатов изменений. • Завершение работы над проблемой привязки данных. 11:21 Проблема с событиями при изменении коллекции • При изменении списка запускаются события, но коллекция не обновляется. • Проблема возникает из-за того, что изменяется не сама коллекция, а свойство внутри неё. 11:58 Решение проблемы с коллекцией • Необходимо изменить коллекцию, чтобы элемент был добавлен. • Проверка типа свойства в списке для корректного отслеживания изменений. 12:26 Отслеживание изменений свойств • Поиск свойств внутри модели представления ключевых значений. • Подключение к изменённому свойству класса для отслеживания изменений. 13:11 Проверка работы решения • Проверка, что изменение свойства запускает соответствующее событие. • Проблема с новыми объектами: изменение коллекции срабатывает, но новое свойство не отслеживается. 14:05 Создание обработчика событий • Создание обработчика событий с изменённым свойством. • Делегирование изменений в коллекции. 17:30 Превращение решения в вспомогательную функцию • Создание метода расширения для наблюдаемой коллекции. • Передача списка свойств для запуска событий изменения. 18:19 Реализация метода расширения • Подключение к базе viewmodel для отслеживания изменений. • Передача начального и существующего значений коллекции. 22:09 Тестирование метода расширения • Проверка работы метода расширения при изменении свойств. • Подтверждение, что метод расширения работает корректно. 22:58 Вспомогательная функция для обновления интерфейса • Создана вспомогательная функция для обновления пользовательского интерфейса при изменении элементов в коллекции. • Функция используется в viewmodel для упрощения процесса обновления. • Необходимо постоянно обновлять параметры функции для соответствия названию приложения. 23:57 Работа с именем вызывающего абонента • Вводится имя вызывающего абонента в виде строки. • Поле становится пустым при вводе имени. 24:05 Обработка выражений с нулевым значением • Обнуляется имя вызывающего абонента для упрощения кода. • Проверяются и обрабатываются выражения с нулевым значением. 24:29 Передача форматов экспорта • Форматы экспорта передаются в массиве. • Если имя вызывающего абонента пусто, оно наследуется от фактического имени. • Проверяется работа функции с помощью точки останова. 25:25 Проверка работы функции • Функция вызывает повышенное свойство при изменении. • Подтверждается, что функция работает корректно. 25:47 Упрощение использования продукта • Упрощается использование общей части продукта без необходимости пользовательских настроек. • Достаточно установить и наблюдать значение вспомогательного свойства. 26:26 Настройка таблицы и элементов управления • Добавляются дополнительные столбцы в таблицу для вопросительных знаков. • Текстовые поля перемещаются в четвёртый столбец. • Используется всплывающая подсказка для вопросительных знаков. 27:26 Стилизация элементов управления • Создаётся переключатель для незаметного наведения курсора. • Устанавливается передний план на основной фон при наведении курсора. • Создаётся приятный эффект при наведении курсора мыши.

Иконка канала Ленинский Букварь
239 подписчиков
12+
2 просмотра
12 часов назад
12+
2 просмотра
12 часов назад

00:00 Введение и проблема с сохранением данных • В последнем видео были созданы страницы, которые нужно доработать. • Проблема: при установке флажка не сохраняется отредактированное значение. • Причина проблемы: привязка данных к строке. 00:31 Решение проблемы с привязкой • Изменение модели представления на пару ключ-значение для упрощения привязки. • Ключ — имя, логическое значение — проверено ли значение. • Преобразование данных в модель данных для отбора отмеченных элементов. 02:07 Работа с коллекциями и форматами экспорта • Передача наблюдаемой коллекции в формате экспорта. • Создание новых элементов с ключом и логическим значением. • Использование форматов точечного экспорта для определения выбранных элементов. 05:17 Проблемы с привязкой и их решение • Привязка не работает из-за использования пары ключ-значение без атрибутов viewmodel. • Создание нового класса viewmodel с наблюдаемыми свойствами. • Добавление конструктора для инициализации свойств. 09:05 Обработка изменений коллекции • Добавление хука для коллекции для уведомления об изменениях. • Проверка изменений и обновление значений. • Создание метода расширения для упрощения поддержки изменений. 10:23 Завершение работы с коллекциями • Подключение к формату экспорта и изменение коллекции. • Использование встроенной функции для вызова делегатов изменений. • Завершение работы над проблемой привязки данных. 11:21 Проблема с событиями при изменении коллекции • При изменении списка запускаются события, но коллекция не обновляется. • Проблема возникает из-за того, что изменяется не сама коллекция, а свойство внутри неё. 11:58 Решение проблемы с коллекцией • Необходимо изменить коллекцию, чтобы элемент был добавлен. • Проверка типа свойства в списке для корректного отслеживания изменений. 12:26 Отслеживание изменений свойств • Поиск свойств внутри модели представления ключевых значений. • Подключение к изменённому свойству класса для отслеживания изменений. 13:11 Проверка работы решения • Проверка, что изменение свойства запускает соответствующее событие. • Проблема с новыми объектами: изменение коллекции срабатывает, но новое свойство не отслеживается. 14:05 Создание обработчика событий • Создание обработчика событий с изменённым свойством. • Делегирование изменений в коллекции. 17:30 Превращение решения в вспомогательную функцию • Создание метода расширения для наблюдаемой коллекции. • Передача списка свойств для запуска событий изменения. 18:19 Реализация метода расширения • Подключение к базе viewmodel для отслеживания изменений. • Передача начального и существующего значений коллекции. 22:09 Тестирование метода расширения • Проверка работы метода расширения при изменении свойств. • Подтверждение, что метод расширения работает корректно. 22:58 Вспомогательная функция для обновления интерфейса • Создана вспомогательная функция для обновления пользовательского интерфейса при изменении элементов в коллекции. • Функция используется в viewmodel для упрощения процесса обновления. • Необходимо постоянно обновлять параметры функции для соответствия названию приложения. 23:57 Работа с именем вызывающего абонента • Вводится имя вызывающего абонента в виде строки. • Поле становится пустым при вводе имени. 24:05 Обработка выражений с нулевым значением • Обнуляется имя вызывающего абонента для упрощения кода. • Проверяются и обрабатываются выражения с нулевым значением. 24:29 Передача форматов экспорта • Форматы экспорта передаются в массиве. • Если имя вызывающего абонента пусто, оно наследуется от фактического имени. • Проверяется работа функции с помощью точки останова. 25:25 Проверка работы функции • Функция вызывает повышенное свойство при изменении. • Подтверждается, что функция работает корректно. 25:47 Упрощение использования продукта • Упрощается использование общей части продукта без необходимости пользовательских настроек. • Достаточно установить и наблюдать значение вспомогательного свойства. 26:26 Настройка таблицы и элементов управления • Добавляются дополнительные столбцы в таблицу для вопросительных знаков. • Текстовые поля перемещаются в четвёртый столбец. • Используется всплывающая подсказка для вопросительных знаков. 27:26 Стилизация элементов управления • Создаётся переключатель для незаметного наведения курсора. • Устанавливается передний план на основной фон при наведении курсора. • Создаётся приятный эффект при наведении курсора мыши.

, чтобы оставлять комментарии