57. Avalonia UI Real World Drag Drop ListBox
00:00 Введение и цели • Исправление ошибок и добавление элементов в список действий. • Добавление возможности перетаскивания элементов. • Переход к созданию основной части приложения. 00:24 Реализация перетаскивания • Обзор страницы прогресса и списка действий. • Отслеживание нажатия и выбора элемента для запуска перетаскивания. • Использование события нажатия указателя мыши. 01:40 Работа с перетаскиванием данных • Создание объекта данных для перетаскивания. • Настройка событий «ввод», «выход», «перемещение по событиям». • Выбор эффекта перетаскивания: перемещение, ссылка, копия. 02:14 Проблемы с перетаскиванием • Проверка работы перетаскивания через точку останова. • Обнаружение проблемы с определением указателя мыши. • Подтверждение запуска события перетаскивания. 02:56 Использование библиотеки Avalonia • Рекомендация использовать библиотеку Avalonia для реализации перетаскивания. • Обзор встроенных моделей поведения Avalonia. • Преимущества использования библиотеки. 05:15 Установка библиотеки • Установка пакета «xaml.behaviors.avalonia» через NuGet. • Добавление пакета в проект вручную. 06:30 Настройка стиля перетаскивания • Создание стиля для перетаскиваемых элементов списка. • Настройка z-индекса и поведения перетаскивания. • Применение стиля к элементу списка. 08:29 Настройка порогов перетаскивания • Установка горизонтальных и вертикальных порогов перетаскивания. • Пометка списка классом «draggable» для включения перетаскивания. 09:24 Проблемы с версиями и их решение • Ошибка при загрузке интерактивности Avalonia XAML. • Обновление версий пакетов до соответствия. • Решение проблемы с устаревшими пакетами через очистку проекта и восстановление .NET. 10:55 Проверка работы перетаскивания • Проверка работы перетаскивания в столбце «Доступные действия». • Необходимость перемещения перетаскиваемого объекта в нужное место. 11:20 Настройка перетаскивания элементов • Проверка возможности перетаскивания столбца. • Размещение элементов в нужном классе для корректного перетаскивания. • Подтверждение работы перетаскивания после запуска. 12:07 Редактирование списка и обновление порядка сортировки • Изменение отображения списка для отображения порядка сортировки. • Обработка изменения позиции элементов в списке. • Запуск функции обновления порядка сортировки при сохранении. 12:53 Использование команд ретрансляции • Создание команды ретрансляции для доступа к функции обновления в пользовательском интерфейсе. • Подключение к коллекции, изменившейся по сравнению с предыдущей версией. 14:05 Привязка к коллекции и тестирование • Привязка интерактивного поведения к списку. • Тестирование изменения текста при перетаскивании элементов. • Обнаружение проблемы с обновлением списка при сохранении. 16:49 Решение проблемы обновления списка • Вызов функции обновления списка перед сохранением. • Обновление списка только для видимых элементов. • Проверка работы обновления списка при перетаскивании и сохранении. 17:33 Обновление списка при удалении элементов • Изменение действия свойства для обновления списка при удалении элементов. • Отладка и исправление ошибок в вызове метода действия. • Успешное обновление списка при перетаскивании и удалении. 20:12 Завершение настройки перетаскивания • Подтверждение корректной работы перетаскивания и обновления списка. • Подчёркивание простоты использования библиотеки для реализации перетаскивания. • Завершение настройки перетаскивания и подтверждение его идеальной работы.
00:00 Введение и цели • Исправление ошибок и добавление элементов в список действий. • Добавление возможности перетаскивания элементов. • Переход к созданию основной части приложения. 00:24 Реализация перетаскивания • Обзор страницы прогресса и списка действий. • Отслеживание нажатия и выбора элемента для запуска перетаскивания. • Использование события нажатия указателя мыши. 01:40 Работа с перетаскиванием данных • Создание объекта данных для перетаскивания. • Настройка событий «ввод», «выход», «перемещение по событиям». • Выбор эффекта перетаскивания: перемещение, ссылка, копия. 02:14 Проблемы с перетаскиванием • Проверка работы перетаскивания через точку останова. • Обнаружение проблемы с определением указателя мыши. • Подтверждение запуска события перетаскивания. 02:56 Использование библиотеки Avalonia • Рекомендация использовать библиотеку Avalonia для реализации перетаскивания. • Обзор встроенных моделей поведения Avalonia. • Преимущества использования библиотеки. 05:15 Установка библиотеки • Установка пакета «xaml.behaviors.avalonia» через NuGet. • Добавление пакета в проект вручную. 06:30 Настройка стиля перетаскивания • Создание стиля для перетаскиваемых элементов списка. • Настройка z-индекса и поведения перетаскивания. • Применение стиля к элементу списка. 08:29 Настройка порогов перетаскивания • Установка горизонтальных и вертикальных порогов перетаскивания. • Пометка списка классом «draggable» для включения перетаскивания. 09:24 Проблемы с версиями и их решение • Ошибка при загрузке интерактивности Avalonia XAML. • Обновление версий пакетов до соответствия. • Решение проблемы с устаревшими пакетами через очистку проекта и восстановление .NET. 10:55 Проверка работы перетаскивания • Проверка работы перетаскивания в столбце «Доступные действия». • Необходимость перемещения перетаскиваемого объекта в нужное место. 11:20 Настройка перетаскивания элементов • Проверка возможности перетаскивания столбца. • Размещение элементов в нужном классе для корректного перетаскивания. • Подтверждение работы перетаскивания после запуска. 12:07 Редактирование списка и обновление порядка сортировки • Изменение отображения списка для отображения порядка сортировки. • Обработка изменения позиции элементов в списке. • Запуск функции обновления порядка сортировки при сохранении. 12:53 Использование команд ретрансляции • Создание команды ретрансляции для доступа к функции обновления в пользовательском интерфейсе. • Подключение к коллекции, изменившейся по сравнению с предыдущей версией. 14:05 Привязка к коллекции и тестирование • Привязка интерактивного поведения к списку. • Тестирование изменения текста при перетаскивании элементов. • Обнаружение проблемы с обновлением списка при сохранении. 16:49 Решение проблемы обновления списка • Вызов функции обновления списка перед сохранением. • Обновление списка только для видимых элементов. • Проверка работы обновления списка при перетаскивании и сохранении. 17:33 Обновление списка при удалении элементов • Изменение действия свойства для обновления списка при удалении элементов. • Отладка и исправление ошибок в вызове метода действия. • Успешное обновление списка при перетаскивании и удалении. 20:12 Завершение настройки перетаскивания • Подтверждение корректной работы перетаскивания и обновления списка. • Подчёркивание простоты использования библиотеки для реализации перетаскивания. • Завершение настройки перетаскивания и подтверждение его идеальной работы.
