49. Avalonia UI Real World (Add Files to List)

00:00 Введение в пользовательский интерфейс шаблонов рисования • Пользовательский интерфейс шаблонов рисования прост, но кажется сложным из-за кода и привязки. • Макет интерфейса аналогичен другим страницам, добавлены поля со списком и кнопки для удаления и добавления элементов. • Необходимо проверить работу серверной части. 00:56 Проверка работы интерфейса • Заполнение других страниц интерфейса. • Проверка сохранения изменений после нажатия «Сохранить». • Начало привязки операций «установить», «перезагрузить» или «заменить». 01:56 Исправление визуальных эффектов • Установка индекса z для панели стека для предотвращения визуальных эффектов. • Привязка видимости панели стека к параметру «непрозрачность». • Решение проблемы с наведением курсора на текст из-за многослойности элементов. 03:46 Привязка поля со списком к операции • Привязка поля со списком к модели просмотра страницы действий. • Создание общедоступной коллекции операций рисования. • Использование enum для перечисления операций рисования. 05:21 Проверка работы операции • Привязка выбранного элемента списка шаблонов чертежей к операции. • Проверка работы эффекта наведения курсора и щелчка. • Изменение описания шаблона и сохранение изменений. 06:37 Управление видимостью шаблонов • Управление видимостью текущего и нового шаблонов в зависимости от операции. • При перезагрузке оба варианта скрыты. • Объединение видимости текущих и новых шаблонов для корректной работы интерфейса. 07:55 Проблемы с перезагрузкой и событиями • Перезагрузка не скрывает шаблон и не заменяет его. • Необходимо активировать свойство notify changed для переоценки свойств. • После активации свойства путь к шаблону становится видимым. 08:53 Управление шаблонами • Создание диалога для выбора файлов шаблонов. • Копирование и вставка средства выбора папок file picker. • Классификация шаблонов чертежей как форматов листов. 09:53 Фильтрация типов файлов • Добавление фильтра для типов файлов. • Настройка свойств для выбора формата листа. • Использование расширения .drt для шаблонов чертежей. 10:49 Работа с путями и URI • Проверка абсолютного URI и возврат локального пути. • Преобразование пути к файлу в URI. • Возврат массива строк путей. 12:08 Привязка команды и добавление шаблонов • Привязка команды «добавить путь к шаблону рисования». • Запуск метода для добавления контуров шаблона рисования. • Использование службы диалога для выбора файлов. 13:58 Фильтры и типы файлов • Выбор между использованием фильтров и указанием точного типа файла. • Возврат списка типов файлов. • Инициализация обнуляемого значения для типа файла. 16:47 Универсальный инструмент выбора файлов • Возможность вызова file picker с различными параметрами. • Фиксация выбранных файлов в базе данных. • Создание метода для добавления контуров шаблона рисования. 17:11 Настройка путей и настроек • Переименование настройки «Поиск по шаблону рисования» в «Пути к шаблону рисования». • Игнорирование пустых путей. • Поиск существующих путей через настройки точечного рисования. 18:28 Перебор существующих путей • Перебираем существующие пути и добавляем новые, если их нет в списке. • Сравниваем пути, игнорируя регистр символов. • Используем регистр, не зависящий от культуры, для корректного сравнения строк. 19:27 Инверсия условия • Инвертируем условие: если пути нет в списке, добавляем его. 19:55 Сортировка и настройка путей • Сортируем пути по алфавиту. • Объединяем шаблоны и существующие пути. • Сохраняем настройки в базе данных. 21:23 Проверка уникальности идентификаторов • Проверяем уникальность идентификаторов настроек. • Обновляем настройки, если идентификатор уже существует. • Удаляем и добавляем настройки при необходимости. 23:29 Привязка к представлению • Создаём общедоступную коллекцию строк для наблюдения. • Привязываем выбранные контуры к наблюдаемому свойству. • Получаем данные из базы данных для обновления списка. 26:39 Создание команды удаления • Создаём команду для удаления шаблонов рисования. • Проверяем количество выбранных точек перед удалением. • Удаляем пути из шаблонов чертежей. 28:29 Фильтрация и сохранение путей • Фильтруем список путей, чтобы не добавлять повторно существующие. • Сохраняем отфильтрованные пути. • Обновляем настройки после фильтрации. 29:20 Оптимизация логики • Инвертируем логику для ускорения процесса. • Указываем путь для сохранения и обновляем настройки. • Позволяем системе выполнить работу за нас. 30:24 Удаление путей • Получение существующих путей, удаление элементов из списка и повторное сохранение. • Проверка отсутствия асинхронности при удалении файла. 30:43 Обновление пользовательского интерфейса • Сообщение пользовательскому интерфейсу об изменениях после редактирования путей. • Обновление списка после редактирования. 31:58 Привязка кнопок 32:57 Связывание выпадающих списков 33:09 Преобразование имён файлов 36:41 Проверка путей 37:44 Обновление модели данных 38:42 Проверка работы 39:22 Файловый браузер 41:11 Завершение настроек

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

00:00 Введение в пользовательский интерфейс шаблонов рисования • Пользовательский интерфейс шаблонов рисования прост, но кажется сложным из-за кода и привязки. • Макет интерфейса аналогичен другим страницам, добавлены поля со списком и кнопки для удаления и добавления элементов. • Необходимо проверить работу серверной части. 00:56 Проверка работы интерфейса • Заполнение других страниц интерфейса. • Проверка сохранения изменений после нажатия «Сохранить». • Начало привязки операций «установить», «перезагрузить» или «заменить». 01:56 Исправление визуальных эффектов • Установка индекса z для панели стека для предотвращения визуальных эффектов. • Привязка видимости панели стека к параметру «непрозрачность». • Решение проблемы с наведением курсора на текст из-за многослойности элементов. 03:46 Привязка поля со списком к операции • Привязка поля со списком к модели просмотра страницы действий. • Создание общедоступной коллекции операций рисования. • Использование enum для перечисления операций рисования. 05:21 Проверка работы операции • Привязка выбранного элемента списка шаблонов чертежей к операции. • Проверка работы эффекта наведения курсора и щелчка. • Изменение описания шаблона и сохранение изменений. 06:37 Управление видимостью шаблонов • Управление видимостью текущего и нового шаблонов в зависимости от операции. • При перезагрузке оба варианта скрыты. • Объединение видимости текущих и новых шаблонов для корректной работы интерфейса. 07:55 Проблемы с перезагрузкой и событиями • Перезагрузка не скрывает шаблон и не заменяет его. • Необходимо активировать свойство notify changed для переоценки свойств. • После активации свойства путь к шаблону становится видимым. 08:53 Управление шаблонами • Создание диалога для выбора файлов шаблонов. • Копирование и вставка средства выбора папок file picker. • Классификация шаблонов чертежей как форматов листов. 09:53 Фильтрация типов файлов • Добавление фильтра для типов файлов. • Настройка свойств для выбора формата листа. • Использование расширения .drt для шаблонов чертежей. 10:49 Работа с путями и URI • Проверка абсолютного URI и возврат локального пути. • Преобразование пути к файлу в URI. • Возврат массива строк путей. 12:08 Привязка команды и добавление шаблонов • Привязка команды «добавить путь к шаблону рисования». • Запуск метода для добавления контуров шаблона рисования. • Использование службы диалога для выбора файлов. 13:58 Фильтры и типы файлов • Выбор между использованием фильтров и указанием точного типа файла. • Возврат списка типов файлов. • Инициализация обнуляемого значения для типа файла. 16:47 Универсальный инструмент выбора файлов • Возможность вызова file picker с различными параметрами. • Фиксация выбранных файлов в базе данных. • Создание метода для добавления контуров шаблона рисования. 17:11 Настройка путей и настроек • Переименование настройки «Поиск по шаблону рисования» в «Пути к шаблону рисования». • Игнорирование пустых путей. • Поиск существующих путей через настройки точечного рисования. 18:28 Перебор существующих путей • Перебираем существующие пути и добавляем новые, если их нет в списке. • Сравниваем пути, игнорируя регистр символов. • Используем регистр, не зависящий от культуры, для корректного сравнения строк. 19:27 Инверсия условия • Инвертируем условие: если пути нет в списке, добавляем его. 19:55 Сортировка и настройка путей • Сортируем пути по алфавиту. • Объединяем шаблоны и существующие пути. • Сохраняем настройки в базе данных. 21:23 Проверка уникальности идентификаторов • Проверяем уникальность идентификаторов настроек. • Обновляем настройки, если идентификатор уже существует. • Удаляем и добавляем настройки при необходимости. 23:29 Привязка к представлению • Создаём общедоступную коллекцию строк для наблюдения. • Привязываем выбранные контуры к наблюдаемому свойству. • Получаем данные из базы данных для обновления списка. 26:39 Создание команды удаления • Создаём команду для удаления шаблонов рисования. • Проверяем количество выбранных точек перед удалением. • Удаляем пути из шаблонов чертежей. 28:29 Фильтрация и сохранение путей • Фильтруем список путей, чтобы не добавлять повторно существующие. • Сохраняем отфильтрованные пути. • Обновляем настройки после фильтрации. 29:20 Оптимизация логики • Инвертируем логику для ускорения процесса. • Указываем путь для сохранения и обновляем настройки. • Позволяем системе выполнить работу за нас. 30:24 Удаление путей • Получение существующих путей, удаление элементов из списка и повторное сохранение. • Проверка отсутствия асинхронности при удалении файла. 30:43 Обновление пользовательского интерфейса • Сообщение пользовательскому интерфейсу об изменениях после редактирования путей. • Обновление списка после редактирования. 31:58 Привязка кнопок 32:57 Связывание выпадающих списков 33:09 Преобразование имён файлов 36:41 Проверка путей 37:44 Обновление модели данных 38:42 Проверка работы 39:22 Файловый браузер 41:11 Завершение настроек

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