title: How can I tell a ContextMenu to place itself relatively to its control and not the cursor?
body: <p>I have a button with a default command and a context menu for other available commands:</p>
  
  <pre><code>&lt;Button Content="Do this" Height="23" Width="75" Command="local:MyCommands.ThisCommand"&gt;
      &lt;Button.ContextMenu&gt;
          &lt;ContextMenu&gt;
              &lt;MenuItem Header="Do this" Command="local:MyCommands.ThisCommand" /&gt;
              &lt;MenuItem Header="Do that" Command="local:MyCommands.ThatCommand" /&gt;
          &lt;/ContextMenu&gt;
      &lt;/Button.ContextMenu&gt;
  &lt;/Button&gt;
  </code></pre>
  
  <p>By default, the context menu appears starting at the hot spot of the cursor:</p>
  
  <p><img src="https://i.stack.imgur.com/1AYow.png" alt=""></p>
  
  <p>However, I'd like it to appear at a fixed relative position, beneath the button (fake, edited screenshot):</p>
  
  <p><img src="https://i.stack.imgur.com/AM6c4.png" alt=""></p>
  
  <p>Setting the context menu's <code>Placement</code>, <code>PlacementRectangle</code> and <code>PlacementTarget</code> properties doesn't seem to do anything; the context menu insists on hanging off the cursor wherever I right-click my button. Worse, focusing the button and hitting the <a href="http://en.wikipedia.org/wiki/Menu_key" rel="noreferrer">menu key</a> causes the context menu to sit in front of the button, blocking it completely.</p>
  
  <p>So, how exactly do I specify that the context menu should appear beneath the button?</p>