|
17 / 16 / 1
Регистрация: 25.01.2023
Сообщений: 468
|
|||
Приложение MVVM. Контекстное меню (удаление, редактирование) для элемента (Товара) в ListBox05.03.2023, 22:14. Показов 3490. Ответов 47
Метки нет (Все метки)
0
|
|||
| 05.03.2023, 22:14 | |
|
Ответы с готовыми решениями:
47
Как создать контекстное меню для элемента управления ListBox?
Ничего не понимаю в Class Modules. Сделал контекстное меню для Listbox |
|
17 / 16 / 1
Регистрация: 25.01.2023
Сообщений: 468
|
||||||||
| 08.03.2023, 22:35 [ТС] | ||||||||
|
Добавлено через 7 минут А если Вы попробуете написать "<MenuItem Header="{Binding}"/> в коде из следующей фиксации, то получится так Элд Хасп, я отправил фиксацию. Там у меня много ошибок в конструкторе, сможете помочь от них избавиться? А то напрягает как-то. Ещё вопрос вот какой. Как в диалоге в зависимости от режима менять надписи, команды и прочее? Сделал для примера так
Ещё я обнаружил, что маппер не заполняет в товаре производителя, поставщика и т. д. Поэтому в ComboBox привязывается Index к Id сущности. Но здесь пришлось написать IdToIndexConverter. Также при переходе в диалог в режиме добавления почему-то родительская сетка Grid получает красную рамку, как будто валидацию не проходит, но её там и не предусматривалось
0
|
||||||||
|
Модератор
|
||||
| 09.03.2023, 00:20 | ||||
|
Реализация на статических кликерах. Добавлено через 1 минуту К сожалению запутался в изменениях. Буду завтра разбираться. Но тоже уже ближе к ыечеру. Добавлено через 38 секунд Добавлено через 55 секунд Для Title я так и сделал.
0
|
||||
|
17 / 16 / 1
Регистрация: 25.01.2023
Сообщений: 468
|
|||||||||
| 09.03.2023, 10:35 [ТС] | |||||||||
|
Добавлено через 4 минуты Добавлено через 16 минут
0
|
|||||||||
|
Модератор
|
||||
| 09.03.2023, 11:16 | ||||
|
И ваши изменения я увидел уже только после слияния фиксаций. Но кликеры для Products - относятся только к нему и неприменимы к другим View. Это как бы часть его CB, но реализованная более абстрактно. Если всё помещать в один ViewsHelper - это получится монструозный класс. Очень много кода. И даже просто найти что-то в нём будет сложно. Добавлено через 2 минуты Добавлено через 2 минуты INexteR, и не убирайте из обработки исключений в App завершение обработки e.Handled = true;.
0
|
||||
|
|
|||||||
| 09.03.2023, 11:26 | |||||||
0
|
|||||||
|
Модератор
|
||
| 09.03.2023, 11:32 | ||
|
Но есть разница в условиях задания. 1) Ваш вариант работает для выбранного элемента, что очевидно не подойдёт для режима мультиселекта; 2) В вашей реализации происходит "прокидка" действия открытия View диалогов через VM. А ставилась задача сделать "идеальную" реализацию. В том числе, чтобы в VM не было иного функционала, кроме отражения Модели.
0
|
||
|
|
|||||||
| 09.03.2023, 11:35 | |||||||
SelectedItems и правим что надо...
0
|
|||||||
|
17 / 16 / 1
Регистрация: 25.01.2023
Сообщений: 468
|
|||
| 09.03.2023, 11:43 [ТС] | |||
|
Добавлено через 1 минуту ))
0
|
|||
|
Модератор
|
|||
| 09.03.2023, 11:46 | |||
|
В режиме мультиселекта в SelectedItem будет только одна сущность. Та которая была выбрана первой. При добавлении выбранных SelectedItem не будет меняться. Если вызвать контекстное меню не над первой выбранной сущностью, то по вашей реализации диалоги будут созданы не для той сущности для которой нужно. Добавлено через 2 минуты Принцип единственной ответственности SOLID читали?
0
|
|||
|
|
|
| 09.03.2023, 11:47 | |
|
0
|
|
|
17 / 16 / 1
Регистрация: 25.01.2023
Сообщений: 468
|
|||
| 09.03.2023, 11:49 [ТС] | |||
|
0
|
|||
|
17 / 16 / 1
Регистрация: 25.01.2023
Сообщений: 468
|
|
| 09.03.2023, 11:51 [ТС] | |
|
0
|
|
|
|
||
| 09.03.2023, 11:52 | ||
|
0
|
||
|
Модератор
|
||
| 09.03.2023, 11:58 | ||
|
Добавлено через 3 минуты
Я не знаю для чего это можно применить, но допустим, пользователь выбрал какой-то элемент дальше листает список. И увидел что другой элемент нужно удалить. Делает над ним ПКМ и в команду вместо этого элемента попадает и предыдущий выбранный, который удалять не нужно.
0
|
||
|
|
||
| 09.03.2023, 12:16 | ||
|
Над группой ВСЕГДА выполняется ОДНА операция. Выделяете - меняете свойства, выделяете - удаляете, выделяете - копируете и т.д.
0
|
||
|
Модератор
|
||
| 09.03.2023, 13:00 | ||
|
Принцип очень простой - Контекстное Меню нужно задавать не в ItemsControl (ListBox, DataGrid и т.п.), а в его элементе или в шаблоне элемента. Добавлено через 1 минуту Но там возникает специфическая задача получения общей VM из другого визуального дерева, так как визуализация Контекстного Меню происходит в отдельном окошке. Добавлено через 1 минуту Вот о том как лучше реализовать эту передачу между разными визуальными деревьями, собственно, и идёт общение.
0
|
||
| 09.03.2023, 13:00 | |
|
Удаление, редактирование и поиск элементов в массиве структур (консольное приложение с меню) Привязка команды для элемента контекстное меню TreeView Как сделать контекстное меню для каждого элемента QListWidget Контекстное меню: Редактирование кнопок
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Baragoz - DPS/HPS бот для WoW 3.3.5a, многоязычный
AmbA 26.10.2026
Хотите ещё ботов? У меня есть один! А я пока отдохну от него.
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=12062&stc=1&d=1793007952
Инструкция внутри.
Сразу отвечу: А в PvP с ним. . .
|
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности.
Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|