Я пытаюсь выследить, какой бит мне нужно настроить, чтобы заставить ContextMenus в WPF прекратить анимацию, когда они появляются/исчезают.Как отключить анимацию WPF ContextMenu?
Из того, что я могу сказать, WPF создает всплывающее окно для размещения ContextMenu. Popup просматривает свойство PopupAnimation и решает, как оживить. То, что я хочу сделать, всегда имеет значение «Нет».
Я попытался установить глобальный неназванный стиль с помощью TargetType Popup, который устанавливает PopupAnimation в None, но это не работает. Если я нарушу System.Windows.Controls.Primitives.Popup.SetupAnimations, я вижу, что тип анимации по-прежнему установлен в Fade. Я предполагаю, что у него еще не было возможности применить стили.
Я попытался подключиться к ContextMenuOpening, но там нет доступа к всплывающему окну, который я мог найти.
Что еще я мог попробовать?
Обратите внимание, что это своего рода вторая часть другого вопроса, которую я задал here. Совет там отлично поработал для меню и всего остального, что у нас было, что было оживление, но единственным исключением был ContextMenus. Они анимируются на основе свойств кода, а не шаблона. Я проверил это, вытащив шаблон ContextMenu, используя приведенный совет here.
Спасибо, это именно то, что я искал! Woo! Счастливый день. – scobi