|
154 / 154 / 60
Регистрация: 11.01.2016
Сообщений: 1,329
|
||||||
Предотвратить всплытие выполнения команды привязанной к MouseDoubleClick27.08.2021, 18:06. Показов 13271. Ответов 99
Добрый день, подскажите пожалуйста, как предотвратить всплытие выполнения команды по двойному клику от дочернего выделенного объекта до родительского.
Структура следующая, упростил для кратности
При двойном клике по ItemChild выполняется команда ItemChild.ShowEditDialogCommand, в которой происходит вызов модального окна предназначенного для редактирования ItemChild. По закрытию этого модального окна, происходит автоматическое открытие модального окна у родителя ItemRoot.ShowEditDialogCommand - т.е выполняется команда родителя, хотя я не кликал два раза по родителю Как предотвратить это всплытие выполнения команд ? Даже скажу так, выполняются все команды выделенных объектов, по очереди, хотя кликал я только по одному
0
|
||||||
| 27.08.2021, 18:06 | |
|
Ответы с готовыми решениями:
99
WPF команды и MVVM. Часть 2. Всплытие команд. Реализация команды для списка элементов [WPF, Элд Хасп] После выполнения определённой команды не выполняются последующие команды Как предотвратить выполнения функции в определенных случаях? |
|
154 / 154 / 60
Регистрация: 11.01.2016
Сообщений: 1,329
|
||
| 16.09.2021, 18:34 [ТС] | ||
|
Элд Хасп, добавил ветку MasterOk, сделал
Элд Хасп, заморозить забыл, старую, не знаю как
0
|
||
|
154 / 154 / 60
Регистрация: 11.01.2016
Сообщений: 1,329
|
|
| 17.09.2021, 11:44 [ТС] | |
|
Элд Хасп, посмотрите как будет время?
0
|
|
|
Модератор
|
|||||||
| 18.09.2021, 15:22 | |||||||
|
UseMuse, Фиксация e0f0372e:
Разберитесь с базовым классом для ViewModel. Добавьте теги XML документации там где их нет - я не всюду их поставил. Попробуйте на основе него уже сделать производную настоящую VM, получающую в конструкторе IMainLogic и работающую с ней.
0
|
|||||||
|
154 / 154 / 60
Регистрация: 11.01.2016
Сообщений: 1,329
|
||
| 18.09.2021, 19:46 [ТС] | ||
|
Элд Хасп, для чего предназначен проект Layer?
Добавлено через 2 минуты
0
|
||
|
Модератор
|
|||
| 18.09.2021, 19:52 | |||
|
Да, и кроме самых мелких Решений, так всегда делается.
0
|
|||
|
154 / 154 / 60
Регистрация: 11.01.2016
Сообщений: 1,329
|
||||||
| 18.09.2021, 19:53 [ТС] | ||||||
0
|
||||||
|
Модератор
|
|||
| 18.09.2021, 20:02 | |||
|
Нам же нужно присвоить значение свойству, а не менять значение переменной из которой получается объект. Добавлено через 2 минуты Хотел назвать ViewModelLayer. Не знаю как так вышло. Если можете - поменяйте название. Если не знаете как, то я сам поменяю когда следующий раз буду вносить изменения.
0
|
|||
|
154 / 154 / 60
Регистрация: 11.01.2016
Сообщений: 1,329
|
|
| 20.09.2021, 15:30 [ТС] | |
|
0
|
|
|
Модератор
|
|||||||||||||||||||||||
| 20.09.2021, 21:33 | |||||||||||||||||||||||
|
В него добавляем поле для Модели. Через "Быстрые Решения" добавляем конструктор и реализуем абстрактные члены. Получаем:
Из-за того что в базовом нет безпараметрического конструктора. Добавляем параметры и вызов параметрического базового конструктора.
Попробуйте сами реализовать методы сохранения. Да, и забыл синхронизацию для коллекций объявить в базовом классе.
1
|
|||||||||||||||||||||||
|
154 / 154 / 60
Регистрация: 11.01.2016
Сообщений: 1,329
|
|||||||
| 20.09.2021, 22:20 [ТС] | |||||||
0
|
|||||||
|
Модератор
|
||||||||||||
| 20.09.2021, 23:16 | ||||||||||||
|
Что бы вызывать асинхронный метод нужно изменить в базовом реализацию метода Execute команды. На что-то подобное:
0
|
||||||||||||
|
154 / 154 / 60
Регистрация: 11.01.2016
Сообщений: 1,329
|
|
| 21.09.2021, 12:45 [ТС] | |
|
Элд Хасп, RelayCommandAsync не получается отрефакторить до уровня, где он принимает 2 параметра T, и токен
0
|
|
|
Модератор
|
||||||||
| 21.09.2021, 13:12 | ||||||||
|
Они решают совсем иные задачи: занятость метода модели, валидация и т.д. Возможно это понадобится для вашей задачи, но точно не сейчас. Команды не трогайте - изменяйте только абстрактные методы. Добавлено через 1 минуту Как изменить методы Execute в базовом классе - я показал постом выше. Добавлено через 6 минут Это же не мой класс. Я думал вы мою реализацию используете. Там вообще какая-то галиматья. Откуда вы её взяли? Добавлено через 7 минут Посмотрите мой пример реализации и использования: An example of my implementation of base classes: BaseInpc, RelayCommand, RelayCommandAsync, RelayCommand<T>, RelayCommandAsync<T>. Создавать отдельный класс только ради оной одной строчки:
Ничто не мешает объявить async для Execute метода обычного RelayCommand.Никакого смысла в инкапсуляции этого нет.
0
|
||||||||
|
154 / 154 / 60
Регистрация: 11.01.2016
Сообщений: 1,329
|
||||
| 21.09.2021, 13:31 [ТС] | ||||
|
Добавлено через 4 минуты Добавлено через 4 минуты
0
|
||||
|
Модератор
|
|||
| 21.09.2021, 14:11 | |||
|
Добавлено через 3 минуты У вас может выполняться один одновременно метод (транзакция) в Модели, если БД не многозадачная. Или без разницы сколько методов, если она многозадачная - почти все современные. Для чего вам нужно "занятость команды"?
0
|
|||
|
154 / 154 / 60
Регистрация: 11.01.2016
Сообщений: 1,329
|
||
| 21.09.2021, 14:24 [ТС] | ||
|
окончания выполнения загрузки, показать загруженные данные
0
|
||
| 21.09.2021, 14:24 | |
|
Вывести результат выполнения команды HELP в текстовый файл так, чтобы у каждой команды был порядковый номер Как предотвратить зависание приложения во время коннекта и выполнения запроса в БД
Написать команды выполнения Ограничение выполнения команды Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|