Город МОСКОВСКИЙ
00:43:48

#28 C# WPF UI - Отладка приложения в реальном мире

Аватар
C# WPF Avalonia UI уголок
Просмотры:
3
Дата загрузки:
20.06.2026 17:57
Длительность:
00:43:48
Категория:
Обучение

Описание

00:07 Введение и цели видео
• Автор планирует исправить мелкие баги в приложении.
• Обсуждаются проблемы с обновлением страниц и отсутствием полосы прокрутки.
• Упоминается желание добавить плавное появление элементов.

01:00 Исправление ошибок
• Исправлена ошибка с элементом управления для ввода пароля, который не регулировался в регуляторе ширины.
• Решена проблема с невозможностью свернуть приложение при развёртывании на весь экран.

02:56 Работа с датами в чате
• Даты в чате становятся видимыми при наведении курсора.
• Исправлено начальное состояние элементов: даты должны быть невидимыми по умолчанию.

04:50 Анализ проблемы с полосой прокрутки
• Удаление стилей для полосы прокрутки помогает выявить проблему.
• Изменение цвета фона бегунка полосы прокрутки для улучшения видимости.
• Уменьшение границы изменения размера для удобства наведения курсора.

08:36 Настройка шаблона ScrollViewer
• Получение шаблона элемента управления ScrollViewer для стилизации.
• Переопределение шаблона по умолчанию и изменение непрозрачности полос прокрутки.
• Добавление анимации для плавного появления полос прокрутки при наведении курсора.

14:03 Завершение работы с полосой прокрутки
• Полосы прокрутки теперь появляются при наведении курсора на контент.
• Проблема с полосами прокрутки решена.

14:18 Плавное появление элементов
• Обсуждение необходимости плавного появления элементов при обновлении модели представления.
• Создание защищённого виртуального метода для анимации на базовой странице.
• Метод будет реагировать на обновление модели представления и вызывать соответствующую анимацию.

15:18 Переопределение метода on view model changed
• Метод on view model changed запускается при изменении модели представления.
• По умолчанию метод ничего не делает.
• При изменении модели представления вызывающие объекты получают уведомление.

16:27 Проверка работы метода
• Переопределённый метод view model changed срабатывает при каждом изменении модели представления на странице чата.
• Точка останова подтверждает срабатывание метода.

17:02 Анимация элементов страницы чата
• Планируется добавить анимацию постепенного появления элементов страницы чата.
• Проблема с нулевым значением списка сообщений чата решается проверкой существования пользовательского интерфейса.

18:51 Решение проблемы с анимацией
• Проверка существования пользовательского интерфейса перед анимацией решает проблему с нулевым значением.
• Анимация появляется при загрузке страницы, обеспечивая плавную загрузку интерфейса.

20:38 Прокрутка до конца при изменении контекста данных
• При изменении контекста данных элемент управления элементами прокручивается до конца.
• Используется ScrollViewer для прокрутки до конца при изменении контекста данных.

25:03 Проверка работы прокрутки
• Присоединённое свойство ScrollViewer подключается к событию изменения контекста данных.
• ScrollViewer автоматически прокручивается до конца при загрузке нового контента.

26:25 Исправление проблем с контекстным меню
• Контекстное меню исчезает при смене вида.
• Проблема решается очисткой кеша и перестройкой приложения.

28:26 Проверка работы кнопки прикрепления
• Кнопка прикрепления запускает команду, но всплывающее окно не появляется.
• Проверка показывает, что физическая часть кнопки работает, но анимация не выполняется.

31:29 Проверка привязки контента
• Привязка контента работает корректно, меню вложений меняется при переходе на другую страницу.
• Проблема заключается в неработающей анимации.

32:43 Проблема с анимацией меню вложений
• Привязка анимации происходит к модели представления страницы, а не к самой странице чата.
• Изменение контекста данных элемента управления на меню вложений приводит к тому, что привязка не срабатывает при изменении модели представления.
• Проблема возникает из-за использования поиска предка при привязке.

34:01 Решение проблемы с анимацией
• Удаление странной анимации и перемещение элементов в рамку для стандартной привязки.
• Перемещение сетки и панели внутрь рамки, оставляя контекст данных неизменным.
• После исправления проблема с анимацией решается.

36:01 Рекомендации по работе с WPF
• Избегание использования find ancestor при привязке, так как это может вызвать проблемы.
• Очистка проекта через «Построить и очистить решение» в Visual Studio.
• Удаление папок bin, obj и скрытой папки VS для полной очистки проекта.

38:50 Добавление данных времени разработки
• Добавление данных времени разработки в базовую модель времени разработки списка сообщений чата.
• Компиляция проекта для проверки корректности работы представления.

40:43 Процесс отладки
• Удаление стилей и проверка стандартной полосы прокрутки.
• Проверка работы команды прикрепления через точки останова.
• Устранение проблемы с видимостью меню путём удаления анимации.

41:41 Принципы отладки
42:41 Заключение

Рекомендуемые видео