#39 C# WPF UI - UI Редактирования пользовательских настроек
00:00 Введение -Возвращение к просмотру видео в формате WPF. -Цель: привести страницу настроек в рабочее состояние для редактирования имени, логина, адреса электронной почты и пароля. 00:24 Проверка существующего приложения -Проверка работы приложения после долгого перерыва. -Наличие экрана входа в систему и реальных значений имени пользователя и пароля. -Пустые графы для имени и фамилии. 01:22 Планирование изменений -Идея использования вращающегося элемента для отображения прогресса редактирования. -Необходимость связи с сервером при нажатии «ОК». -Планирование отображения сообщений об успехе или неудаче в системе уведомлений. 03:13 Настройка модели представления -Настройка модели представления ввода текста и пароля. -Введение свойства «рабочий» для отображения процесса обновления. 04:21 Реализация вращающегося элемента -Копирование вращающегося текста из кнопки входа в систему. -Вставка вращающегося текста в пользовательский интерфейс. 06:14 Анимация и выравнивание элементов -Анимация вращающегося текста в зависимости от свойства «рабочий». -Выравнивание элементов по горизонтали и вертикали для корректного отображения. 08:24 Тестирование и корректировка -Проверка компиляции файла. -Тестирование работы вращающегося элемента при редактировании. -Корректировка эффекта зависания и отступа от края. 09:19 Отключение элементов управления -Отключение элементов управления при работе с сервером. -Логическая инверсия состояния элементов управления для исправления эффекта зависания. 10:12 Начало работы и исправление прокладки -Переход к рабочему состоянию после нажатия кнопки. -Исправление прокладки для улучшения пользовательского интерфейса. -Подготовка к созданию кода модели просмотра. 11:27 Создание модели просмотра ввода текста -Разработка функции для обработки различных элементов управления. -Передача действий через функции и задачи. -Определение действия «зафиксировать» для сохранения текста. 13:16 Асинхронное сохранение имени -Создание асинхронной задачи для сохранения имени на сервере. -Передача модели представления ввода текста в функцию. -Ожидание обновления с сервера в течение трёх секунд. 13:36 Привязка модели представления к команде -Создание команды «Сохранить имя» для привязки к пользовательскому интерфейсу. -Выполнение команды «Сохранить имя асинхронно». -Настройка команды для вызова. 18:45 Проверка редактирования и отмены -Проверка возможности редактирования элемента управления во время работы. -Отключение редактирования при работе для защиты от сбоев. -Обсуждение отмены ожидающего запроса и его автоматического выполнения. 20:35 Обработка команды сохранения -Ожидание результата вызова commit. -Установка значения по умолчанию true для свойства commit. -Предпочтение успешного выполнения действия фиксации по умолчанию. 21:29 Использование команды run async -Команда run async запускает асинхронную задачу с флагом «работает». -Флаг «работает» сначала установлен в true, а после завершения задачи — в false. -Программа обрабатывает сбои с помощью блока finally. 22:28 Выход из режима редактирования -Во время работы задачи пользователь выходит из режима редактирования. -Исходный контент сохраняется автоматически. 23:37 Фиксация изменений -Вызывается действие фиксации изменений. -Если действие не указано, возвращается true, иначе выполняется реальное действие. -После завершения действия фиксируется изменённый текст. 24:56 Обработка ошибок -При ошибке пользователь возвращается в режим редактирования. -Перед возвратом восстанавливается исходный текст. 26:26 Проверка работы логики -При нажатии F5 отображается счётчик в течение трёх секунд. -В случае успеха обновляется исходный текст. -При неудаче восстанавливается исходный текст и пользователь возвращается в режим редактирования. 28:50 Тестирование обратной логики -Проверяется обратная логика: если изменение не удалось, пользователь возвращается к исходному состоянию. -Демонстрируется, что изменение значения «ангел шесть» на «два» приводит к сбою. -Подтверждается, что при неудачной попытке изменения пользователь возвращается к исходному тексту. 29:45 Тестирование ввода и фиксации данных -Ввод «тест» и его отображение. -Повторное тестирование и отображение уведомления об ошибке. -Восстановление исходного значения при отмене. 30:43 Асинхронное сохранение данных -Настройка асинхронного сохранения имени пользователя, пароля и электронной почты. -Клонирование команд для сохранения данных. 31:41 Выполнение функций сохранения -Сохранение имени пользователя и адреса электронной почты. -Успешное сохранение имени пользователя, неудачное — адреса электронной почты. 32:38 Проверка команд -Проверка выполнения трёх команд: имя пользователя, адрес электронной почты, пароль. -Создание системы оповещения о событиях. 33:31 Работа с полем ввода пароля 34:16 Метод сохранения пароля 36:14 Настройка действия фиксации пароля 37:10 Проблемы с вводом пароля 39:17 Завершение работы с паролем 39:51 Заключение и анонс следующего видео
00:00 Введение -Возвращение к просмотру видео в формате WPF. -Цель: привести страницу настроек в рабочее состояние для редактирования имени, логина, адреса электронной почты и пароля. 00:24 Проверка существующего приложения -Проверка работы приложения после долгого перерыва. -Наличие экрана входа в систему и реальных значений имени пользователя и пароля. -Пустые графы для имени и фамилии. 01:22 Планирование изменений -Идея использования вращающегося элемента для отображения прогресса редактирования. -Необходимость связи с сервером при нажатии «ОК». -Планирование отображения сообщений об успехе или неудаче в системе уведомлений. 03:13 Настройка модели представления -Настройка модели представления ввода текста и пароля. -Введение свойства «рабочий» для отображения процесса обновления. 04:21 Реализация вращающегося элемента -Копирование вращающегося текста из кнопки входа в систему. -Вставка вращающегося текста в пользовательский интерфейс. 06:14 Анимация и выравнивание элементов -Анимация вращающегося текста в зависимости от свойства «рабочий». -Выравнивание элементов по горизонтали и вертикали для корректного отображения. 08:24 Тестирование и корректировка -Проверка компиляции файла. -Тестирование работы вращающегося элемента при редактировании. -Корректировка эффекта зависания и отступа от края. 09:19 Отключение элементов управления -Отключение элементов управления при работе с сервером. -Логическая инверсия состояния элементов управления для исправления эффекта зависания. 10:12 Начало работы и исправление прокладки -Переход к рабочему состоянию после нажатия кнопки. -Исправление прокладки для улучшения пользовательского интерфейса. -Подготовка к созданию кода модели просмотра. 11:27 Создание модели просмотра ввода текста -Разработка функции для обработки различных элементов управления. -Передача действий через функции и задачи. -Определение действия «зафиксировать» для сохранения текста. 13:16 Асинхронное сохранение имени -Создание асинхронной задачи для сохранения имени на сервере. -Передача модели представления ввода текста в функцию. -Ожидание обновления с сервера в течение трёх секунд. 13:36 Привязка модели представления к команде -Создание команды «Сохранить имя» для привязки к пользовательскому интерфейсу. -Выполнение команды «Сохранить имя асинхронно». -Настройка команды для вызова. 18:45 Проверка редактирования и отмены -Проверка возможности редактирования элемента управления во время работы. -Отключение редактирования при работе для защиты от сбоев. -Обсуждение отмены ожидающего запроса и его автоматического выполнения. 20:35 Обработка команды сохранения -Ожидание результата вызова commit. -Установка значения по умолчанию true для свойства commit. -Предпочтение успешного выполнения действия фиксации по умолчанию. 21:29 Использование команды run async -Команда run async запускает асинхронную задачу с флагом «работает». -Флаг «работает» сначала установлен в true, а после завершения задачи — в false. -Программа обрабатывает сбои с помощью блока finally. 22:28 Выход из режима редактирования -Во время работы задачи пользователь выходит из режима редактирования. -Исходный контент сохраняется автоматически. 23:37 Фиксация изменений -Вызывается действие фиксации изменений. -Если действие не указано, возвращается true, иначе выполняется реальное действие. -После завершения действия фиксируется изменённый текст. 24:56 Обработка ошибок -При ошибке пользователь возвращается в режим редактирования. -Перед возвратом восстанавливается исходный текст. 26:26 Проверка работы логики -При нажатии F5 отображается счётчик в течение трёх секунд. -В случае успеха обновляется исходный текст. -При неудаче восстанавливается исходный текст и пользователь возвращается в режим редактирования. 28:50 Тестирование обратной логики -Проверяется обратная логика: если изменение не удалось, пользователь возвращается к исходному состоянию. -Демонстрируется, что изменение значения «ангел шесть» на «два» приводит к сбою. -Подтверждается, что при неудачной попытке изменения пользователь возвращается к исходному тексту. 29:45 Тестирование ввода и фиксации данных -Ввод «тест» и его отображение. -Повторное тестирование и отображение уведомления об ошибке. -Восстановление исходного значения при отмене. 30:43 Асинхронное сохранение данных -Настройка асинхронного сохранения имени пользователя, пароля и электронной почты. -Клонирование команд для сохранения данных. 31:41 Выполнение функций сохранения -Сохранение имени пользователя и адреса электронной почты. -Успешное сохранение имени пользователя, неудачное — адреса электронной почты. 32:38 Проверка команд -Проверка выполнения трёх команд: имя пользователя, адрес электронной почты, пароль. -Создание системы оповещения о событиях. 33:31 Работа с полем ввода пароля 34:16 Метод сохранения пароля 36:14 Настройка действия фиксации пароля 37:10 Проблемы с вводом пароля 39:17 Завершение работы с паролем 39:51 Заключение и анонс следующего видео




