title: How to disable WPF ContextMenu animations?
body: <p>I'm trying to hunt down what bit I need to tweak to get ContextMenus in WPF to stop animating when they appear/disappear.</p>
  
  <p>From what I can tell, WPF creates a Popup to host the ContextMenu. The Popup looks at its PopupAnimation property and decides how to animate. What I want to do is always have that set to "None".</p>
  
  <p>I've tried setting a global unnamed style with a TargetType of Popup that sets PopupAnimation to None but this does not work. If I break in System.Windows.Controls.Primitives.Popup.SetupAnimations I can see that the animation type is still set to Fade. I'm guessing that it hasn't had a chance to apply styles yet..</p>
  
  <p>I've tried hooking ContextMenuOpening but there's no access to a Popup in there that I could find.</p>
  
  <p>What else could I try?</p>
  
  <p><em>Note that this is sort of the second part of another question I asked <a href="https://stackoverflow.com/questions/3121726/how-to-prevent-animating-menus-in-wpf">here</a>. The advice there worked great for menus and everything else we had that was animating, but the one exception has been ContextMenus. They animate based on properties in code, not a template. I verified this by pulling the ContextMenu template out using the advice given <a href="https://stackoverflow.com/questions/641634/default-contextmenu-style-wpf/676176#676176">here</a>.</em></p>